ワンクリックで
stride
Integration instructions for Stride kanban platform with AI-human collaboration workflows, client-side hooks, and task management API
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Integration instructions for Stride kanban platform with AI-human collaboration workflows, client-side hooks, and task management API
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
Use this skill working with Phoenix Framework. Consult this when working with the web layer, controllers, views, liveviews etc.
Use when writing ANY code in the Stride project (this Phoenix/Elixir kanban application). Invoke BEFORE implementing features, fixing bugs, or making UI changes. Invoke BEFORE marking any development task as complete.
INTERNAL — invoked only by stride:stride-workflow. Do NOT invoke from a user prompt. Contains the claim API contract (POST /api/tasks/claim payload and required before_doing_result shape) and the before_doing hook execution pattern, used during the orchestrator's claim phase.
INTERNAL — invoked only by stride:stride-workflow. Do NOT invoke from a user prompt. Contains the completion API contract (PATCH /api/tasks/:id/complete required fields including completion_summary, actual_complexity, after_doing_result, before_review_result, explorer_result, reviewer_result), used during the orchestrator's completion phase.
INTERNAL — invoked only by stride:stride-workflow. Do NOT invoke from a user prompt. Contains the goal/batch creation contract (POST /api/tasks/batch root key MUST be "goals" not "tasks", dependency index format), used during the orchestrator's goal-decomposition phase.
INTERNAL — invoked only by stride:stride-workflow. Do NOT invoke from a user prompt. Contains the work-task and defect creation contract (POST /api/tasks field formats — verification_steps and key_files as object arrays, testing_strategy arrays), used during the orchestrator's goal-decomposition and task-creation phases.
SOC 職業分類に基づく
| name | stride |
| description | Integration instructions for Stride kanban platform with AI-human collaboration workflows, client-side hooks, and task management API |
| license | MIT |
| compatibility | opencode |
| metadata | {"platform":"stride","api_base":"https://www.stridelikeaboss.com"} |
If you arrived here directly from a user prompt, you are in the wrong skill.
Invoke stride:stride-workflow instead. Do not read further.
Sub-skills are dispatched by the orchestrator only.
For any Stride task work, the entry point is the stride-workflow skill. Every task should be claimed, explored, implemented, reviewed, and completed through that single lifecycle: claim → explore → implement → review → complete. The supporting skills (stride-claiming-tasks, stride-completing-tasks, stride-creating-tasks, stride-creating-goals, stride-enriching-tasks, stride-subagent-workflow) document API contracts and per-phase rules, but they are dispatched from inside stride-workflow, not invoked directly. This file is a legacy single-skill bundle of all Stride content; whatever runtime gating your host provides, the discipline of routing through stride-workflow is on the agent. When the user says "claim a task" or "complete this task", follow the lifecycle below — do not read or apply sub-skill contracts independently.
I provide comprehensive integration instructions for working with Stride, a kanban-based task management platform designed for AI-human collaboration. I cover:
Use this skill when you need to:
Stride enforces workflow discipline through four client-side hooks that execute on your machine:
CRITICAL: Execute BOTH after_doing AND before_review hooks BEFORE calling the task completion endpoint. The API requires both after_doing_result and before_review_result in the completion request. Hook validation failures must prevent task completion.
DON'T:
{"identifier": "W47", "title": "Add dark mode", "type": "work"}
DO:
{"title": "Add dark mode", "type": "work"}
WHY: Identifiers are auto-generated (G1, W47, D12). Specifying them causes API rejection.
DON'T:
{"verification_steps": ["Run mix test", "Check coverage"]}
DO:
{
"verification_steps": [
{
"step_type": "command",
"step_text": "mix test path/to/test.exs",
"expected_result": "All tests pass",
"position": 0
}
]
}
WHY: verification_steps must be array of objects with step_type, step_text, expected_result, and position.
DON'T:
{
"testing_strategy": {
"unit_tests": "Test the auth flow",
"integration_tests": "Test end-to-end"
}
}
DO:
{
"testing_strategy": {
"unit_tests": ["Test JWT generation", "Test token validation"],
"integration_tests": ["Full auth flow with database"],
"manual_tests": ["Verify login form works"],
"edge_cases": ["Expired tokens", "Invalid credentials"],
"coverage_target": "100% for auth module"
}
}
WHY: unit_tests, integration_tests, and manual_tests must be arrays of strings.
DON'T:
{"type": "task"}
DO:
{"type": "work"}
WHY: type must be exactly "work", "defect", or "goal" as strings.
DON'T:
PATCH /api/tasks/:id/completeDO:
after_doing hook (tests, lint, build) — capture resultbefore_review hook (create PR, docs) — capture resultPATCH /api/tasks/:id/complete WITH both resultsWHY: The API REQUIRES both after_doing_result and before_review_result parameters. Requests without them are rejected with 422 errors.
Required:
type - Exactly "work", "defect", or "goal"title - Clear, specific descriptionCritical:
key_files - Prevents merge conflicts by marking which files are modifieddependencies - Controls execution order using task identifiers or array indicesverification_steps - Array of objects with proper structuretesting_strategy - Must have arrays for unit/integration/manual testsStrongly Recommended:
description - WHY this matters and WHAT needs to be donecomplexity - "small", "medium", or "large"priority - "low", "medium", "high", or "critical"needs_review - Boolean controlling review requirementpitfalls - Array of what NOT to dopatterns_to_follow - Code patterns to replicate (newline-separated string)acceptance_criteria - Definition of done (newline-separated string)why - Problem/value explanationwhat - Specific change descriptionwhere_context - Location in code/UI# 1. Get next available task
curl -X GET https://www.stridelikeaboss.com/api/tasks/next \
-H "Authorization: Bearer YOUR_TOKEN"
# 2. Execute before_doing hook FIRST (from .stride.md ## before_doing section)
# Capture exit_code, output, and duration_ms
# 3. Only if before_doing succeeds, claim the task WITH hook result
curl -X POST https://www.stridelikeaboss.com/api/tasks/claim \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"identifier": "W47",
"agent_name": "OpenCode",
"skills_version": "1.0",
"before_doing_result": {
"exit_code": 0,
"output": "Already up to date.\nAll dependencies are up to date",
"duration_ms": 1500
}
}'
# 4. Begin implementation work immediately
# 1. Finish your work
# 2. Execute after_doing hook (from .stride.md ## after_doing section)
# Capture exit_code, output, duration_ms
# If hook fails, DO NOT proceed — fix issues and retry
# 3. Execute before_review hook (from .stride.md ## before_review section)
# Capture exit_code, output, duration_ms
# If hook fails, DO NOT proceed — fix issues and retry
# 4. Only if BOTH hooks succeed, mark complete WITH both results
curl -X PATCH https://www.stridelikeaboss.com/api/tasks/123/complete \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"agent_name": "OpenCode",
"time_spent_minutes": 45,
"completion_notes": "Implemented feature. All tests passing.",
"completion_summary": "Added JWT auth with refresh tokens",
"actual_complexity": "medium",
"actual_files_changed": "lib/my_app/auth.ex, test/my_app/auth_test.exs",
"skills_version": "1.0",
"after_doing_result": {
"exit_code": 0,
"output": "Running tests...\n230 tests, 0 failures\nmix credo --strict\nNo issues found",
"duration_ms": 45678
},
"before_review_result": {
"exit_code": 0,
"output": "Creating pull request...\nPR #123 created",
"duration_ms": 2340
}
}'
Complete endpoint required fields:
agent_name (string) - Name of the completing agenttime_spent_minutes (integer) - Actual time spentcompletion_notes (string) - Summary of what was donecompletion_summary (string) - Brief summary for trackingactual_complexity (enum) - "small", "medium", or "large"actual_files_changed (string) - Comma-separated file paths (NOT an array)after_doing_result (object) - Hook result with exit_code, output, duration_msbefore_review_result (object) - Hook result with exit_code, output, duration_ms{
"type": "work",
"title": "[Verb] [What] [Where/Context]",
"description": "Clear explanation of WHY this matters and WHAT needs to be done",
"complexity": "medium",
"priority": "high",
"needs_review": true,
"key_files": [
{
"file_path": "lib/my_app/auth.ex",
"note": "Add JWT validation",
"position": 0
}
],
"dependencies": ["W45", "W46"],
"verification_steps": [
{
"step_type": "command",
"step_text": "mix test test/auth_test.exs",
"expected_result": "All tests pass",
"position": 0
}
],
"testing_strategy": {
"unit_tests": ["Test JWT generation", "Test token validation"],
"integration_tests": ["Full auth flow with database"],
"manual_tests": ["Verify login form works"],
"edge_cases": ["Expired tokens", "Invalid credentials"],
"coverage_target": "100% for auth module"
},
"acceptance_criteria": "Users can log in with email/password\nJWT tokens are generated correctly\nExpired tokens are rejected",
"patterns_to_follow": "Follow existing auth patterns in lib/my_app/auth/*.ex",
"pitfalls": ["Don't hardcode secrets", "Don't skip token validation"],
"why": "Users need secure authentication to access protected resources",
"what": "Implement JWT-based authentication system",
"where_context": "lib/my_app/auth/ directory and related controllers"
}
{
"type": "goal",
"title": "Implement User Authentication System",
"description": "Complete authentication system with JWT, password reset, and 2FA",
"complexity": "large",
"tasks": [
{
"type": "work",
"title": "Create user schema and migration",
"complexity": "small",
"key_files": [{"file_path": "priv/repo/migrations/xxx_create_users.exs", "note": "User table", "position": 0}],
"dependencies": []
},
{
"type": "work",
"title": "Implement JWT authentication",
"complexity": "medium",
"key_files": [{"file_path": "lib/my_app/auth.ex", "note": "JWT logic", "position": 0}],
"dependencies": [0]
},
{
"type": "work",
"title": "Add password reset functionality",
"complexity": "medium",
"dependencies": [1]
}
]
}
Your project should have these files:
.stride_auth.md (NEVER commit - add to .gitignore)
.stride.md (commit to version control)
Workflow: before_doing hook → claim WITH result → work → after_doing hook → before_review hook → complete WITH both results → [if needs_review=false: after_review hook → claim next, else: stop]
API Base: https://www.stridelikeaboss.com
Authentication: Authorization: Bearer YOUR_TOKEN
Never commit: .stride_auth.md (contains secrets)
Always commit: .stride.md (contains hooks)