@dv.nghiem/flowdeck 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +136 -0
- package/bin/flowdeck.js +108 -0
- package/dist/agents/architect.d.ts +3 -0
- package/dist/agents/architect.d.ts.map +1 -0
- package/dist/agents/code-explorer.d.ts +3 -0
- package/dist/agents/code-explorer.d.ts.map +1 -0
- package/dist/agents/coder.d.ts +3 -0
- package/dist/agents/coder.d.ts.map +1 -0
- package/dist/agents/debug.d.ts +4 -0
- package/dist/agents/debug.d.ts.map +1 -0
- package/dist/agents/doc-updater.d.ts +3 -0
- package/dist/agents/doc-updater.d.ts.map +1 -0
- package/dist/agents/flowdeck.d.ts +5 -0
- package/dist/agents/flowdeck.d.ts.map +1 -0
- package/dist/agents/index.d.ts +38 -0
- package/dist/agents/index.d.ts.map +1 -0
- package/dist/agents/mapper.d.ts +3 -0
- package/dist/agents/mapper.d.ts.map +1 -0
- package/dist/agents/orchestrator.d.ts +10 -0
- package/dist/agents/orchestrator.d.ts.map +1 -0
- package/dist/agents/performance.d.ts +4 -0
- package/dist/agents/performance.d.ts.map +1 -0
- package/dist/agents/planner.d.ts +3 -0
- package/dist/agents/planner.d.ts.map +1 -0
- package/dist/agents/policy-enforcer.d.ts +3 -0
- package/dist/agents/policy-enforcer.d.ts.map +1 -0
- package/dist/agents/researcher.d.ts +3 -0
- package/dist/agents/researcher.d.ts.map +1 -0
- package/dist/agents/reviewer.d.ts +3 -0
- package/dist/agents/reviewer.d.ts.map +1 -0
- package/dist/agents/risk-analyst.d.ts +3 -0
- package/dist/agents/risk-analyst.d.ts.map +1 -0
- package/dist/agents/security-auditor.d.ts +3 -0
- package/dist/agents/security-auditor.d.ts.map +1 -0
- package/dist/agents/specialist.d.ts +5 -0
- package/dist/agents/specialist.d.ts.map +1 -0
- package/dist/agents/tester.d.ts +3 -0
- package/dist/agents/tester.d.ts.map +1 -0
- package/dist/agents/types.d.ts +20 -0
- package/dist/agents/types.d.ts.map +1 -0
- package/dist/agents/writer.d.ts +3 -0
- package/dist/agents/writer.d.ts.map +1 -0
- package/dist/commands/analysis/analysis.test.d.ts +2 -0
- package/dist/commands/analysis/analysis.test.d.ts.map +1 -0
- package/dist/commands/analysis/analyze-change.d.ts +148 -0
- package/dist/commands/analysis/analyze-change.d.ts.map +1 -0
- package/dist/commands/analysis/evaluate-risk.d.ts +77 -0
- package/dist/commands/analysis/evaluate-risk.d.ts.map +1 -0
- package/dist/commands/analysis/guarded-edit.d.ts +72 -0
- package/dist/commands/analysis/guarded-edit.d.ts.map +1 -0
- package/dist/commands/execution/deploy-check.d.ts +91 -0
- package/dist/commands/execution/deploy-check.d.ts.map +1 -0
- package/dist/commands/execution/fix-bug.d.ts +187 -0
- package/dist/commands/execution/fix-bug.d.ts.map +1 -0
- package/dist/commands/execution/new-feature.d.ts +171 -0
- package/dist/commands/execution/new-feature.d.ts.map +1 -0
- package/dist/commands/execution/review-code.d.ts +130 -0
- package/dist/commands/execution/review-code.d.ts.map +1 -0
- package/dist/commands/execution/write-docs.d.ts +94 -0
- package/dist/commands/execution/write-docs.d.ts.map +1 -0
- package/dist/commands/governance/approve.d.ts +80 -0
- package/dist/commands/governance/approve.d.ts.map +1 -0
- package/dist/commands/intelligence/blast-radius.d.ts +67 -0
- package/dist/commands/intelligence/blast-radius.d.ts.map +1 -0
- package/dist/commands/intelligence/impact-radar.d.ts +71 -0
- package/dist/commands/intelligence/impact-radar.d.ts.map +1 -0
- package/dist/commands/intelligence/intelligence.test.d.ts +2 -0
- package/dist/commands/intelligence/intelligence.test.d.ts.map +1 -0
- package/dist/commands/intelligence/regression-predict.d.ts +75 -0
- package/dist/commands/intelligence/regression-predict.d.ts.map +1 -0
- package/dist/commands/intelligence/review-route.d.ts +65 -0
- package/dist/commands/intelligence/review-route.d.ts.map +1 -0
- package/dist/commands/intelligence/test-gap.d.ts +73 -0
- package/dist/commands/intelligence/test-gap.d.ts.map +1 -0
- package/dist/commands/intelligence/translate-intent.d.ts +87 -0
- package/dist/commands/intelligence/translate-intent.d.ts.map +1 -0
- package/dist/commands/intelligence/volatility-map-cmd.d.ts +68 -0
- package/dist/commands/intelligence/volatility-map-cmd.d.ts.map +1 -0
- package/dist/commands/planning/ask.d.ts +62 -0
- package/dist/commands/planning/ask.d.ts.map +1 -0
- package/dist/commands/planning/ask.test.d.ts +2 -0
- package/dist/commands/planning/ask.test.d.ts.map +1 -0
- package/dist/commands/planning/dashboard.d.ts +30 -0
- package/dist/commands/planning/dashboard.d.ts.map +1 -0
- package/dist/commands/planning/discuss.d.ts +39 -0
- package/dist/commands/planning/discuss.d.ts.map +1 -0
- package/dist/commands/planning/plan.d.ts +67 -0
- package/dist/commands/planning/plan.d.ts.map +1 -0
- package/dist/commands/planning/roadmap.d.ts +105 -0
- package/dist/commands/planning/roadmap.d.ts.map +1 -0
- package/dist/commands/setup/doctor.d.ts +10 -0
- package/dist/commands/setup/doctor.d.ts.map +1 -0
- package/dist/commands/setup/map-codebase.d.ts +62 -0
- package/dist/commands/setup/map-codebase.d.ts.map +1 -0
- package/dist/commands/setup/new-project.d.ts +19 -0
- package/dist/commands/setup/new-project.d.ts.map +1 -0
- package/dist/commands/setup/settings.d.ts +57 -0
- package/dist/commands/setup/settings.d.ts.map +1 -0
- package/dist/commands/state/checkpoint.d.ts +27 -0
- package/dist/commands/state/checkpoint.d.ts.map +1 -0
- package/dist/commands/state/multi-repo.d.ts +63 -0
- package/dist/commands/state/multi-repo.d.ts.map +1 -0
- package/dist/commands/state/progress.d.ts +57 -0
- package/dist/commands/state/progress.d.ts.map +1 -0
- package/dist/commands/state/resume.d.ts +11 -0
- package/dist/commands/state/resume.d.ts.map +1 -0
- package/dist/commands/state/workspace-commands.d.ts +207 -0
- package/dist/commands/state/workspace-commands.d.ts.map +1 -0
- package/dist/dashboard/lib/port-finder.d.ts +10 -0
- package/dist/dashboard/lib/port-finder.d.ts.map +1 -0
- package/dist/dashboard/lib/port-finder.test.d.ts +2 -0
- package/dist/dashboard/lib/port-finder.test.d.ts.map +1 -0
- package/dist/dashboard/lib/state-reader.d.ts +3 -0
- package/dist/dashboard/lib/state-reader.d.ts.map +1 -0
- package/dist/dashboard/server.d.ts +2 -0
- package/dist/dashboard/server.d.ts.map +1 -0
- package/dist/dashboard/server.mjs +13649 -0
- package/dist/dashboard/types.d.ts +72 -0
- package/dist/dashboard/types.d.ts.map +1 -0
- package/dist/dashboard/views/index.ejs +391 -0
- package/dist/dashboard/views/partials/blockers.ejs +10 -0
- package/dist/dashboard/views/partials/header.ejs +20 -0
- package/dist/dashboard/views/partials/phase-timeline.ejs +40 -0
- package/dist/dashboard/views/partials/progress.ejs +12 -0
- package/dist/hooks/approval-hook.d.ts +13 -0
- package/dist/hooks/approval-hook.d.ts.map +1 -0
- package/dist/hooks/compaction-hook.d.ts +23 -0
- package/dist/hooks/compaction-hook.d.ts.map +1 -0
- package/dist/hooks/context-window-monitor.d.ts +21 -0
- package/dist/hooks/context-window-monitor.d.ts.map +1 -0
- package/dist/hooks/decision-trace-hook.d.ts +13 -0
- package/dist/hooks/decision-trace-hook.d.ts.map +1 -0
- package/dist/hooks/file-tracker.d.ts +29 -0
- package/dist/hooks/file-tracker.d.ts.map +1 -0
- package/dist/hooks/guard-rails.d.ts +33 -0
- package/dist/hooks/guard-rails.d.ts.map +1 -0
- package/dist/hooks/index.d.ts +5 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/notifications.d.ts +21 -0
- package/dist/hooks/notifications.d.ts.map +1 -0
- package/dist/hooks/patch-trust.d.ts +27 -0
- package/dist/hooks/patch-trust.d.ts.map +1 -0
- package/dist/hooks/patch-trust.test.d.ts +2 -0
- package/dist/hooks/patch-trust.test.d.ts.map +1 -0
- package/dist/hooks/session-events.d.ts +8 -0
- package/dist/hooks/session-events.d.ts.map +1 -0
- package/dist/hooks/session-idle-hook.d.ts +21 -0
- package/dist/hooks/session-idle-hook.d.ts.map +1 -0
- package/dist/hooks/session-start.d.ts +10 -0
- package/dist/hooks/session-start.d.ts.map +1 -0
- package/dist/hooks/shell-env-hook.d.ts +21 -0
- package/dist/hooks/shell-env-hook.d.ts.map +1 -0
- package/dist/hooks/telemetry-hook.d.ts +25 -0
- package/dist/hooks/telemetry-hook.d.ts.map +1 -0
- package/dist/hooks/todo-hook.d.ts +25 -0
- package/dist/hooks/todo-hook.d.ts.map +1 -0
- package/dist/hooks/tool-guard.d.ts +41 -0
- package/dist/hooks/tool-guard.d.ts.map +1 -0
- package/dist/hooks/tool-guard.test.d.ts +2 -0
- package/dist/hooks/tool-guard.test.d.ts.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +6639 -0
- package/dist/lib/confirmation.d.ts +20 -0
- package/dist/lib/confirmation.d.ts.map +1 -0
- package/dist/lib/impact-radar.d.ts +35 -0
- package/dist/lib/impact-radar.d.ts.map +1 -0
- package/dist/lib/signatures.d.ts +12 -0
- package/dist/lib/signatures.d.ts.map +1 -0
- package/dist/lib/timestamps.d.ts +23 -0
- package/dist/lib/timestamps.d.ts.map +1 -0
- package/dist/mcp/index.d.ts +20 -0
- package/dist/mcp/index.d.ts.map +1 -0
- package/dist/services/agent-performance.d.ts +29 -0
- package/dist/services/agent-performance.d.ts.map +1 -0
- package/dist/services/approval-manager.d.ts +30 -0
- package/dist/services/approval-manager.d.ts.map +1 -0
- package/dist/services/index.d.ts +7 -0
- package/dist/services/index.d.ts.map +1 -0
- package/dist/services/model-router.d.ts +35 -0
- package/dist/services/model-router.d.ts.map +1 -0
- package/dist/services/policy-compiler.d.ts +27 -0
- package/dist/services/policy-compiler.d.ts.map +1 -0
- package/dist/services/run-trace.d.ts +34 -0
- package/dist/services/run-trace.d.ts.map +1 -0
- package/dist/services/services.test.d.ts +2 -0
- package/dist/services/services.test.d.ts.map +1 -0
- package/dist/services/telemetry.d.ts +34 -0
- package/dist/services/telemetry.d.ts.map +1 -0
- package/dist/tools/agent-dispatch.test.d.ts +2 -0
- package/dist/tools/agent-dispatch.test.d.ts.map +1 -0
- package/dist/tools/codebase-state.d.ts +4 -0
- package/dist/tools/codebase-state.d.ts.map +1 -0
- package/dist/tools/context-generator.d.ts +3 -0
- package/dist/tools/context-generator.d.ts.map +1 -0
- package/dist/tools/council.d.ts +4 -0
- package/dist/tools/council.d.ts.map +1 -0
- package/dist/tools/decision-trace.d.ts +16 -0
- package/dist/tools/decision-trace.d.ts.map +1 -0
- package/dist/tools/delegate.d.ts +4 -0
- package/dist/tools/delegate.d.ts.map +1 -0
- package/dist/tools/failure-replay.d.ts +19 -0
- package/dist/tools/failure-replay.d.ts.map +1 -0
- package/dist/tools/failure-replay.test.d.ts +2 -0
- package/dist/tools/failure-replay.test.d.ts.map +1 -0
- package/dist/tools/hash-edit.d.ts +3 -0
- package/dist/tools/hash-edit.d.ts.map +1 -0
- package/dist/tools/planning-state-lib.d.ts +65 -0
- package/dist/tools/planning-state-lib.d.ts.map +1 -0
- package/dist/tools/planning-state.d.ts +3 -0
- package/dist/tools/planning-state.d.ts.map +1 -0
- package/dist/tools/policy-engine.d.ts +19 -0
- package/dist/tools/policy-engine.d.ts.map +1 -0
- package/dist/tools/repo-memory.d.ts +20 -0
- package/dist/tools/repo-memory.d.ts.map +1 -0
- package/dist/tools/repo-memory.test.d.ts +2 -0
- package/dist/tools/repo-memory.test.d.ts.map +1 -0
- package/dist/tools/run-parallel.d.ts +4 -0
- package/dist/tools/run-parallel.d.ts.map +1 -0
- package/dist/tools/run-pipeline.d.ts +4 -0
- package/dist/tools/run-pipeline.d.ts.map +1 -0
- package/dist/tools/volatility-map.d.ts +18 -0
- package/dist/tools/volatility-map.d.ts.map +1 -0
- package/dist/tools/volatility-map.test.d.ts +2 -0
- package/dist/tools/volatility-map.test.d.ts.map +1 -0
- package/dist/tools/workspace-state.d.ts +3 -0
- package/dist/tools/workspace-state.d.ts.map +1 -0
- package/docs/USER_GUIDE.md +20 -0
- package/docs/agents.md +562 -0
- package/docs/best-practices.md +47 -0
- package/docs/command-migration.md +175 -0
- package/docs/commands/fd-analyze-change.md +107 -0
- package/docs/commands/fd-ask.md +51 -0
- package/docs/commands/fd-checkpoint.md +10 -0
- package/docs/commands/fd-dashboard.md +11 -0
- package/docs/commands/fd-deploy-check.md +11 -0
- package/docs/commands/fd-discuss.md +28 -0
- package/docs/commands/fd-evaluate-risk.md +134 -0
- package/docs/commands/fd-fix-bug.md +24 -0
- package/docs/commands/fd-guarded-edit.md +105 -0
- package/docs/commands/fd-map-codebase.md +27 -0
- package/docs/commands/fd-multi-repo.md +63 -0
- package/docs/commands/fd-new-feature.md +25 -0
- package/docs/commands/fd-new-project.md +24 -0
- package/docs/commands/fd-plan.md +33 -0
- package/docs/commands/fd-progress.md +11 -0
- package/docs/commands/fd-resume.md +10 -0
- package/docs/commands/fd-review-code.md +29 -0
- package/docs/commands/fd-roadmap.md +10 -0
- package/docs/commands/fd-settings.md +10 -0
- package/docs/commands/fd-write-docs.md +10 -0
- package/docs/commands.md +476 -0
- package/docs/configuration.md +211 -0
- package/docs/feature-integration-architecture.md +255 -0
- package/docs/index.md +75 -0
- package/docs/installation.md +134 -0
- package/docs/intelligence.md +294 -0
- package/docs/multi-repo.md +201 -0
- package/docs/notifications.md +170 -0
- package/docs/parallel-execution.md +227 -0
- package/docs/quick-start.md +174 -0
- package/docs/rules.md +459 -0
- package/docs/skills.md +408 -0
- package/docs/workflows.md +376 -0
- package/package.json +58 -0
- package/postinstall.mjs +102 -0
- package/src/rules/README.md +37 -0
- package/src/rules/common/agent-orchestration.md +86 -0
- package/src/rules/common/coding-style.md +120 -0
- package/src/rules/common/git-workflow.md +77 -0
- package/src/rules/common/security.md +94 -0
- package/src/rules/common/testing.md +105 -0
- package/src/rules/golang/patterns.md +187 -0
- package/src/rules/java/patterns.md +204 -0
- package/src/rules/python/patterns.md +141 -0
- package/src/rules/rust/patterns.md +210 -0
- package/src/rules/typescript/patterns.md +168 -0
- package/src/skills/api-design/SKILL.md +143 -0
- package/src/skills/arch-constraint-guard/SKILL.md +61 -0
- package/src/skills/blast-radius-preview/SKILL.md +65 -0
- package/src/skills/change-impact-radar/SKILL.md +63 -0
- package/src/skills/code-review/SKILL.md +108 -0
- package/src/skills/code-tour/SKILL.md +101 -0
- package/src/skills/codebase-mapping/SKILL.md +87 -0
- package/src/skills/codebase-onboarding/SKILL.md +133 -0
- package/src/skills/confidence-aware-planning/SKILL.md +67 -0
- package/src/skills/context-load/SKILL.md +63 -0
- package/src/skills/debug-flow/SKILL.md +75 -0
- package/src/skills/decision-trace/SKILL.md +72 -0
- package/src/skills/dependency-audit/SKILL.md +126 -0
- package/src/skills/deploy-check/SKILL.md +87 -0
- package/src/skills/documentation-writer/SKILL.md +154 -0
- package/src/skills/failure-replay-engine/SKILL.md +59 -0
- package/src/skills/git-release/SKILL.md +94 -0
- package/src/skills/git-workflow/SKILL.md +177 -0
- package/src/skills/golang-patterns/SKILL.md +511 -0
- package/src/skills/human-review-routing/SKILL.md +65 -0
- package/src/skills/intent-translator/SKILL.md +57 -0
- package/src/skills/java-patterns/SKILL.md +479 -0
- package/src/skills/multi-repo/SKILL.md +187 -0
- package/src/skills/parallel-execute/SKILL.md +92 -0
- package/src/skills/patch-trust-score/SKILL.md +44 -0
- package/src/skills/performance-profiling/SKILL.md +153 -0
- package/src/skills/plan-task/SKILL.md +101 -0
- package/src/skills/python-patterns/SKILL.md +529 -0
- package/src/skills/refactor-guide/SKILL.md +117 -0
- package/src/skills/regression-prediction/SKILL.md +57 -0
- package/src/skills/repo-memory-graph/SKILL.md +49 -0
- package/src/skills/rust-patterns/SKILL.md +492 -0
- package/src/skills/security-scan/SKILL.md +91 -0
- package/src/skills/self-healing-policies/SKILL.md +76 -0
- package/src/skills/tdd-workflow/SKILL.md +126 -0
- package/src/skills/test-coverage/SKILL.md +94 -0
- package/src/skills/test-gap-detector/SKILL.md +58 -0
- package/src/skills/volatility-map/SKILL.md +52 -0
- package/src/workflows/debug-flow.md +119 -0
- package/src/workflows/deploy-check-flow.md +98 -0
- package/src/workflows/discuss-flow.md +97 -0
- package/src/workflows/execute-flow.md +233 -0
- package/src/workflows/execute-phase.md +142 -0
- package/src/workflows/fix-bug-flow.md +210 -0
- package/src/workflows/map-codebase-flow.md +92 -0
- package/src/workflows/multi-repo-flow.md +226 -0
- package/src/workflows/parallel-execution-flow.md +236 -0
- package/src/workflows/plan-flow.md +126 -0
- package/src/workflows/plan-phase.md +101 -0
- package/src/workflows/refactor-flow.md +122 -0
- package/src/workflows/review-code-flow.md +105 -0
- package/src/workflows/spec-driven-flow.md +43 -0
- package/src/workflows/write-docs-flow.md +95 -0
package/docs/skills.md
ADDED
|
@@ -0,0 +1,408 @@
|
|
|
1
|
+
# FlowDeck Skills
|
|
2
|
+
|
|
3
|
+
Skills are reusable workflow patterns installed into OpenCode. Invoke a skill in any OpenCode prompt by naming it: `"use the tdd-workflow skill to add tests for this module"`.
|
|
4
|
+
|
|
5
|
+
Skills live in `~/.config/opencode/skills/{name}/SKILL.md`. OpenCode loads them automatically.
|
|
6
|
+
|
|
7
|
+
## How Skills Differ from Agents
|
|
8
|
+
|
|
9
|
+
- **Agents** = specialist personas with focused roles and system prompts. An agent is a "who".
|
|
10
|
+
- **Skills** = process patterns any agent can follow. A skill is a "how".
|
|
11
|
+
- Skills are most useful when giving an agent a specific methodology to apply, rather than just a task description.
|
|
12
|
+
|
|
13
|
+
For example: `@tester use the tdd-workflow skill to add tests for the payments module` combines the tester agent's persona with the TDD skill's step-by-step process enforcement.
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## Skill Quick Reference
|
|
18
|
+
|
|
19
|
+
| Skill | Purpose | Best used with |
|
|
20
|
+
|-------|---------|---------------|
|
|
21
|
+
| `api-design` | REST conventions, resource naming, status codes, pagination, versioning | `@architect`, `@reviewer` |
|
|
22
|
+
| `codebase-mapping` | Systematic `.codebase/` documentation from source files | `@mapper`, `@orchestrator` |
|
|
23
|
+
| `codebase-onboarding` | New contributor orientation, project documentation | `@code-explorer`, `@writer` |
|
|
24
|
+
| `code-review` | Structured review process with severity-tiered findings | `@reviewer`, `@security-auditor` |
|
|
25
|
+
| `code-tour` | Guided codebase walkthroughs as structured markdown | `@writer`, `@code-explorer` |
|
|
26
|
+
| `context-load` | Efficient session start: load STATE.md, PLAN.md, PROJECT.md | Any agent at session start |
|
|
27
|
+
| `debug-flow` | 6-step debug sequence: reproduce → trace → test → fix → verify | `@debug-specialist`, `@tester` |
|
|
28
|
+
| `dependency-audit` | CVE scanning, license compliance, outdated package detection | `@security-auditor`, `@reviewer` |
|
|
29
|
+
| `deploy-check` | Pre-deployment go/no-go checklist | `@orchestrator`, `@security-auditor` |
|
|
30
|
+
| `documentation-writer` | Technical writing standards for READMEs, API docs, changelogs | `@writer`, `@doc-updater` |
|
|
31
|
+
| `git-release` | Semantic versioning, changelog generation, release tagging | `@writer`, `@orchestrator` |
|
|
32
|
+
| `git-workflow` | Conventional commits, branching strategy, PR standards | `@coder`, `@orchestrator` |
|
|
33
|
+
| `golang-patterns` | Idiomatic Go: error handling, goroutines, interfaces, testing | `@coder`, `@reviewer` |
|
|
34
|
+
| `java-patterns` | Modern Java 17+: records, Spring Boot, JPA, CompletableFuture | `@coder`, `@reviewer` |
|
|
35
|
+
| `multi-repo` | Cross-repo dependency graphs, contract-first changes, ordered rollouts | `@multi-repo-coordinator`, `@architect` |
|
|
36
|
+
| `parallel-execute` | Wave-based parallel task coordination and merge protocol | `@parallel-coordinator`, `@task-splitter` |
|
|
37
|
+
| `performance-profiling` | Profiling methodology, bottleneck identification, before/after measurement | `@performance-optimizer` |
|
|
38
|
+
| `plan-task` | Wave-structured task planning with dependency graph and success criteria | `@planner`, `@flowdeck-planner` |
|
|
39
|
+
| `python-patterns` | Python 3.10+: type hints, dataclasses, asyncio, pytest | `@coder`, `@reviewer` |
|
|
40
|
+
| `refactor-guide` | Safe refactoring: tests-first, one transformation per commit | `@refactor-guide`, `@coder` |
|
|
41
|
+
| `rust-patterns` | Ownership, traits, async/Tokio, error handling, smart pointers | `@coder`, `@reviewer` |
|
|
42
|
+
| `security-scan` | OWASP-based scanning, severity classification, PASS/FAIL verdict | `@security-auditor`, `@reviewer` |
|
|
43
|
+
| `tdd-workflow` | Red-Green-Refactor cycle, AAA pattern, 80% coverage target | `@tester`, `@coder` |
|
|
44
|
+
| `test-coverage` | Coverage gap analysis, TDD enforcement, write-test-first cycle | `@tester`, `@reviewer` |
|
|
45
|
+
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
## Skill Categories
|
|
49
|
+
|
|
50
|
+
### Testing & Quality
|
|
51
|
+
|
|
52
|
+
#### `tdd-workflow`
|
|
53
|
+
|
|
54
|
+
Enforces the Red-Green-Refactor cycle. Write the failing test first, implement the minimum code to make it pass, then clean up while keeping tests green. The skill mandates an 80% coverage target as a by-product — the primary goal is meaningful tests that catch real regressions, not coverage numbers for their own sake. The skill covers test naming conventions (`should <verb> when <condition>`), the Arrange-Act-Assert structure, and git checkpoints between each cycle.
|
|
55
|
+
|
|
56
|
+
**Example invocation:**
|
|
57
|
+
```
|
|
58
|
+
@tester Use the tdd-workflow skill to add tests for src/services/order-service.ts.
|
|
59
|
+
Start with a failing test for the calculateTotal function.
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
**When to use:** Any time a new function or feature is being implemented. Non-negotiable for bug fixes — write the failing regression test before applying the fix.
|
|
63
|
+
|
|
64
|
+
---
|
|
65
|
+
|
|
66
|
+
#### `test-coverage`
|
|
67
|
+
|
|
68
|
+
Analyzes coverage reports to find untested paths, edge cases, and error branches. It guides a write-test-first cycle: identify the gap, write the failing test, implement the minimum code to cover it, verify the gap is closed. Coverage is measured as a feedback signal, not a target to hit by writing empty assertions. The skill distinguishes between meaningful coverage (test exercises real logic) and nominal coverage (test hits the line but makes no assertions).
|
|
69
|
+
|
|
70
|
+
**Example invocation:**
|
|
71
|
+
```
|
|
72
|
+
@tester Use the test-coverage skill to identify gaps in src/auth/. Run the coverage report
|
|
73
|
+
and write tests for any uncovered error paths.
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
**When to use:** Before a release when preparing code for review, or when coverage drops below the project threshold after a refactor.
|
|
77
|
+
|
|
78
|
+
---
|
|
79
|
+
|
|
80
|
+
#### `code-review`
|
|
81
|
+
|
|
82
|
+
Structures a code review as a systematic checklist pass with severity tiers: CRITICAL (security vulnerabilities, data corruption risk), HIGH (logic errors, broken edge cases), MEDIUM (quality issues, convention violations), and PASS. Only confirmed issues — 80%+ confidence — are reported. Each finding includes the file and line, a description of the problem, and a specific remediation step. Speculation without evidence is explicitly excluded.
|
|
83
|
+
|
|
84
|
+
**Example invocation:**
|
|
85
|
+
```
|
|
86
|
+
@reviewer Use the code-review skill to review src/routes/payments.ts.
|
|
87
|
+
Report by severity. CRITICAL first.
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
**When to use:** Before merging any pull request, and before any production deployment on security-sensitive paths.
|
|
91
|
+
|
|
92
|
+
---
|
|
93
|
+
|
|
94
|
+
#### `security-scan`
|
|
95
|
+
|
|
96
|
+
Applies OWASP Top 10 checks as a structured pre-commit or pre-deploy scan. Covers injection (SQL, NoSQL, command), broken access control (missing auth checks, ownership bypasses), cryptographic failures (weak hashing, plaintext secrets), and dependency risks (known CVEs). Returns a PASS or FAIL verdict. Any CRITICAL or HIGH finding is a FAIL that blocks deployment until remediated with documented approval.
|
|
97
|
+
|
|
98
|
+
**Example invocation:**
|
|
99
|
+
```
|
|
100
|
+
@security-auditor Use the security-scan skill on the changed files in this PR.
|
|
101
|
+
Focus on A01 (access control) and A03 (injection). Return PASS or FAIL.
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
**When to use:** Before merging PRs that touch auth, data access, or API routes. Required before every production release.
|
|
105
|
+
|
|
106
|
+
---
|
|
107
|
+
|
|
108
|
+
### Development Process
|
|
109
|
+
|
|
110
|
+
#### `debug-flow`
|
|
111
|
+
|
|
112
|
+
A 6-step debugging sequence designed to find root causes, not suppress symptoms:
|
|
113
|
+
1. **Reproduce** — establish a minimal reproduction case with exact inputs
|
|
114
|
+
2. **Read** — read the full stack trace from top to bottom
|
|
115
|
+
3. **Trace** — trace the execution path backward from the failure point
|
|
116
|
+
4. **Hypothesize** — form a specific, falsifiable root cause hypothesis
|
|
117
|
+
5. **Test hypothesis** — write a failing test that confirms the hypothesis
|
|
118
|
+
6. **Fix** — apply the minimum change that makes the test pass and run the full suite
|
|
119
|
+
|
|
120
|
+
**Example invocation:**
|
|
121
|
+
```
|
|
122
|
+
@debug-specialist Use the debug-flow skill to diagnose the discount calculation bug.
|
|
123
|
+
The order total is wrong when both a coupon and loyalty credit are applied.
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
**When to use:** Any time a bug needs investigation before a fix is proposed. Skip if the fix is already known (e.g., a typo or a trivial null check).
|
|
127
|
+
|
|
128
|
+
---
|
|
129
|
+
|
|
130
|
+
#### `refactor-guide`
|
|
131
|
+
|
|
132
|
+
Enforces safe refactoring: tests must be green before starting, one transformation per commit, no behavior changes. The skill catalogs common safe transforms (extract function, rename variable, move module, inline variable) and orders them by risk from low to high. After each transformation the test suite must stay green — if it breaks, `git checkout .` and find a smaller step. No features are permitted in a refactoring session.
|
|
133
|
+
|
|
134
|
+
**Example invocation:**
|
|
135
|
+
```
|
|
136
|
+
@refactor-guide Use the refactor-guide skill on src/services/billing-service.ts.
|
|
137
|
+
It's 700 lines. Extract functions and commit each transform separately.
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
**When to use:** When a file grows beyond 800 lines, when duplication is discovered, or when code is being prepared for a new feature that requires cleaner structure.
|
|
141
|
+
|
|
142
|
+
---
|
|
143
|
+
|
|
144
|
+
#### `api-design`
|
|
145
|
+
|
|
146
|
+
REST API design conventions covering: resource naming (nouns not verbs, plural collections), HTTP method semantics, status code correctness (201 for creation, 204 for deletion, 409 for conflict), pagination patterns (cursor-based vs offset, response envelope format), filtering and sorting query parameters, and URL versioning (`/v1/`). Also covers error response structure so clients can handle failures programmatically.
|
|
147
|
+
|
|
148
|
+
**Example invocation:**
|
|
149
|
+
```
|
|
150
|
+
@architect Use the api-design skill to review the new /orders endpoints.
|
|
151
|
+
Check for resource naming, status codes, and pagination consistency.
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
**When to use:** When designing new API endpoints, reviewing an existing API for inconsistencies, or evaluating a third-party API before integration.
|
|
155
|
+
|
|
156
|
+
---
|
|
157
|
+
|
|
158
|
+
#### `plan-task`
|
|
159
|
+
|
|
160
|
+
Turns a feature description into a concrete, wave-structured execution plan. Each task is scoped to a file, sized to fit in one working session (≤3 hours), and assigned to a specific agent. The dependency graph drives wave ordering — tasks with no dependencies form Wave 1, tasks that depend on Wave 1 outputs form Wave 2, and so on. Each task has a success criterion that can be verified without running the full system.
|
|
161
|
+
|
|
162
|
+
**Example invocation:**
|
|
163
|
+
```
|
|
164
|
+
@planner Use the plan-task skill to plan the multi-factor authentication feature.
|
|
165
|
+
Break it into waves. Every task should have a specific file scope and
|
|
166
|
+
a verifiable success criterion.
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
**When to use:** Before starting any feature that touches more than two files, or any feature involving a data model change or API boundary change.
|
|
170
|
+
|
|
171
|
+
---
|
|
172
|
+
|
|
173
|
+
### Language-Specific
|
|
174
|
+
|
|
175
|
+
#### `python-patterns`
|
|
176
|
+
|
|
177
|
+
Idiomatic Python 3.10+ patterns for production code: type hints with `TypeVar` and `Protocol`, `dataclass` vs `TypedDict` vs Pydantic for data modeling, `asyncio` patterns (proper `await` chains, `asyncio.gather` for concurrency), generator functions for memory-efficient iteration, `pytest` fixtures and parametrize, and common pitfalls (mutable default arguments, late-binding closures, `is` vs `==`).
|
|
178
|
+
|
|
179
|
+
**Example invocation:**
|
|
180
|
+
```
|
|
181
|
+
@coder Use the python-patterns skill to implement the data pipeline.
|
|
182
|
+
Prefer dataclasses for the value objects and asyncio for IO operations.
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
**When to use:** When writing or reviewing Python code. Especially valuable for catching common pitfalls before they reach code review.
|
|
186
|
+
|
|
187
|
+
---
|
|
188
|
+
|
|
189
|
+
#### `golang-patterns`
|
|
190
|
+
|
|
191
|
+
Idiomatic Go for production services: explicit error handling with wrapped errors (`fmt.Errorf("context: %w", err)`), interface design (small, single-method interfaces preferred), goroutine lifecycle management (no leaked goroutines, context cancellation), channel patterns (fan-out, fan-in, done channels), table-driven tests with `t.Run`, and `go vet` / `staticcheck` compliance.
|
|
192
|
+
|
|
193
|
+
**Example invocation:**
|
|
194
|
+
```
|
|
195
|
+
@coder Use the golang-patterns skill to implement the worker pool.
|
|
196
|
+
Use proper goroutine lifecycle management and context cancellation.
|
|
197
|
+
```
|
|
198
|
+
|
|
199
|
+
**When to use:** When writing or reviewing Go code, particularly for concurrent processing logic or service layer design.
|
|
200
|
+
|
|
201
|
+
---
|
|
202
|
+
|
|
203
|
+
#### `java-patterns`
|
|
204
|
+
|
|
205
|
+
Modern Java 17+ patterns for production applications: records for immutable value objects, sealed classes for algebraic types, Stream API for collection processing, `CompletableFuture` for async composition, Spring Boot conventions (constructor injection, `@ConfigurationProperties`), JPA best practices (avoid N+1 with `@EntityGraph`, use projections for read models), and JUnit 5 / Mockito testing patterns.
|
|
206
|
+
|
|
207
|
+
**Example invocation:**
|
|
208
|
+
```
|
|
209
|
+
@coder Use the java-patterns skill to implement the OrderService.
|
|
210
|
+
Use records for the command objects and constructor injection for dependencies.
|
|
211
|
+
```
|
|
212
|
+
|
|
213
|
+
**When to use:** When writing or reviewing Java code in a Spring Boot application, particularly for service layer design and JPA query optimization.
|
|
214
|
+
|
|
215
|
+
---
|
|
216
|
+
|
|
217
|
+
#### `rust-patterns`
|
|
218
|
+
|
|
219
|
+
Safe, idiomatic Rust: ownership and borrowing mental model (own vs borrow vs borrow-mut), error handling with `Result<T, E>` and `?` propagation, trait design and `impl Trait` return types, async/await with Tokio (spawning tasks, `JoinHandle`, `select!`), smart pointer selection (`Box`, `Rc`, `Arc`, `RefCell`), and common compiler error resolutions for lifetime issues.
|
|
220
|
+
|
|
221
|
+
**Example invocation:**
|
|
222
|
+
```
|
|
223
|
+
@coder Use the rust-patterns skill to implement the async HTTP client.
|
|
224
|
+
Use Tokio and ensure proper error propagation with the ? operator.
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
**When to use:** When writing or reviewing Rust code. Particularly helpful when fighting the borrow checker or designing async services.
|
|
228
|
+
|
|
229
|
+
---
|
|
230
|
+
|
|
231
|
+
### Project & Codebase
|
|
232
|
+
|
|
233
|
+
#### `codebase-mapping`
|
|
234
|
+
|
|
235
|
+
Systematic approach to producing `.codebase/` documentation: `STACK.md` (exact pinned versions from manifest), `ARCHITECTURE.md` (component diagram and data flow), `STRUCTURE.md` (directory layout with purpose), `CONVENTIONS.md` (naming and coding patterns with file:line examples), `TESTING.md` (test frameworks and patterns), and `CONCERNS.md` (TODOs, FIXMEs, HACKs from grep). Factual-only — gaps are marked `UNKNOWN`, never filled with assumptions.
|
|
236
|
+
|
|
237
|
+
**Example invocation:**
|
|
238
|
+
```
|
|
239
|
+
@mapper Use the codebase-mapping skill to produce .codebase/CONVENTIONS.md.
|
|
240
|
+
Read actual source files and include file:line examples for each pattern.
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
**When to use:** When starting work on an unfamiliar codebase, before a major feature, or when `.codebase/` is missing or stale (triggered by `/fd-map-codebase`).
|
|
244
|
+
|
|
245
|
+
---
|
|
246
|
+
|
|
247
|
+
#### `codebase-onboarding`
|
|
248
|
+
|
|
249
|
+
Guides systematic exploration of a new codebase for a new contributor or agent session. Covers: reading the project manifests for stack and dependencies, locating entry points, understanding the directory structure, tracing one request or operation end-to-end, and identifying the test setup. Produces a structured onboarding document an agent can reference without re-scanning files each session.
|
|
250
|
+
|
|
251
|
+
**Example invocation:**
|
|
252
|
+
```
|
|
253
|
+
@code-explorer Use the codebase-onboarding skill to orient yourself in this project.
|
|
254
|
+
Trace one authenticated API request from route to database.
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
**When to use:** At the start of work on a project you haven't seen before, or when an agent needs to understand the project quickly without a full `/fd-map-codebase` run.
|
|
258
|
+
|
|
259
|
+
---
|
|
260
|
+
|
|
261
|
+
#### `code-tour`
|
|
262
|
+
|
|
263
|
+
Creates step-by-step guided walkthroughs of a codebase or code change as structured markdown. Each stop in the tour is a specific file and line range with explanation of what the code does and why it matters. Tours are useful for onboarding documents, PR review guides on complex changes, and architectural explainers for non-contributors.
|
|
264
|
+
|
|
265
|
+
**Example invocation:**
|
|
266
|
+
```
|
|
267
|
+
@writer Use the code-tour skill to create a tour of the authentication flow.
|
|
268
|
+
Start at the route handler and walk through to the JWT generation.
|
|
269
|
+
Save to docs/tours/auth-flow.md.
|
|
270
|
+
```
|
|
271
|
+
|
|
272
|
+
**When to use:** When onboarding a new developer, explaining a complex architecture to stakeholders, or creating a review guide for a large PR.
|
|
273
|
+
|
|
274
|
+
---
|
|
275
|
+
|
|
276
|
+
#### `context-load`
|
|
277
|
+
|
|
278
|
+
Loads the minimum set of project files to brief any agent on the current project state: `STATE.md` (current phase and active plan), `PLAN.md` (what is being built), `PROJECT.md` (project vision and constraints), `CONVENTIONS.md` (coding patterns to match), and `ARCHITECTURE.md` (system design). Takes under 30 seconds and ensures the agent doesn't make decisions based on stale context.
|
|
279
|
+
|
|
280
|
+
**Example invocation:**
|
|
281
|
+
```
|
|
282
|
+
@orchestrator Use the context-load skill at session start before taking any action.
|
|
283
|
+
```
|
|
284
|
+
|
|
285
|
+
**When to use:** At the start of every OpenCode session, or any time an agent seems unaware of the current project state or phase.
|
|
286
|
+
|
|
287
|
+
---
|
|
288
|
+
|
|
289
|
+
### DevOps & Operations
|
|
290
|
+
|
|
291
|
+
#### `deploy-check`
|
|
292
|
+
|
|
293
|
+
Pre-deployment verification checklist covering four parallel checks: full test suite (all tests pass, no skips), security scan (no CRITICAL or HIGH findings), CVE audit (no known vulnerabilities in dependencies), and build verification (clean build, no warnings treated as errors). Returns GO or NO-GO. Any CRITICAL or HIGH finding produces NO-GO with a specific list of required fixes before deployment can proceed.
|
|
294
|
+
|
|
295
|
+
**Example invocation:**
|
|
296
|
+
```
|
|
297
|
+
@orchestrator Use the deploy-check skill before releasing to production.
|
|
298
|
+
Run all checks in parallel and produce the GO/NO-GO report.
|
|
299
|
+
```
|
|
300
|
+
|
|
301
|
+
**When to use:** Before every production deployment. Required for any release, including hotfixes.
|
|
302
|
+
|
|
303
|
+
---
|
|
304
|
+
|
|
305
|
+
#### `git-workflow`
|
|
306
|
+
|
|
307
|
+
Branching strategy (feature branches from `main`, naming convention `feat/`, `fix/`, `chore/`), conventional commit format (`feat(scope): description`, `fix`, `refactor`, `docs`, `test`, `chore`), PR standards (description template, link to issue, checklist), and merge vs rebase guidance (rebase to clean up local history; merge for PR integration).
|
|
308
|
+
|
|
309
|
+
**Example invocation:**
|
|
310
|
+
```
|
|
311
|
+
@coder Use the git-workflow skill to commit the authentication changes.
|
|
312
|
+
Write a conventional commit message and create the PR.
|
|
313
|
+
```
|
|
314
|
+
|
|
315
|
+
**When to use:** When starting a feature branch, creating a PR, or cleaning up commit history before a merge.
|
|
316
|
+
|
|
317
|
+
---
|
|
318
|
+
|
|
319
|
+
#### `git-release`
|
|
320
|
+
|
|
321
|
+
Creates consistent releases with semantic versioning, changelog generation from merged PRs, and release tagging. Determines the version bump (major for breaking changes, minor for new features, patch for bug fixes), drafts release notes in Keep a Changelog format under `## [x.y.z]`, and provides a copy-pasteable sequence of tag and push commands.
|
|
322
|
+
|
|
323
|
+
**Example invocation:**
|
|
324
|
+
```
|
|
325
|
+
@writer Use the git-release skill to cut version 2.1.0.
|
|
326
|
+
Collect merged PRs since the last tag and generate the changelog entry.
|
|
327
|
+
```
|
|
328
|
+
|
|
329
|
+
**When to use:** When a milestone is complete and ready to ship, or when a hotfix needs a patch release.
|
|
330
|
+
|
|
331
|
+
---
|
|
332
|
+
|
|
333
|
+
#### `dependency-audit`
|
|
334
|
+
|
|
335
|
+
Audits npm, pip, or cargo dependencies for: known CVEs (using `npm audit`, `pip-audit`, or `cargo audit`), outdated packages with available security patches, and license issues (GPL in a commercial project, missing attribution). Produces a severity-ranked report and a remediation plan with specific upgrade commands. Does not blindly update all dependencies — only those with security or compatibility issues.
|
|
336
|
+
|
|
337
|
+
**Example invocation:**
|
|
338
|
+
```
|
|
339
|
+
@security-auditor Use the dependency-audit skill to audit package.json dependencies.
|
|
340
|
+
Flag any packages with known CVEs and propose targeted upgrades.
|
|
341
|
+
```
|
|
342
|
+
|
|
343
|
+
**When to use:** Before any production release, when a CVE alert is received, or when adding a major new dependency to the project.
|
|
344
|
+
|
|
345
|
+
---
|
|
346
|
+
|
|
347
|
+
#### `performance-profiling`
|
|
348
|
+
|
|
349
|
+
Profiling methodology that prevents premature optimization: measure first, then optimize. Covers Node.js CPU profiling (`node --prof`), bundle analysis (`webpack-bundle-analyzer`, `source-map-explorer`), database query analysis (`EXPLAIN ANALYZE`), and browser performance (Lighthouse, Core Web Vitals). All findings are reported as before/after measurements. No optimization is proposed without profiling data.
|
|
350
|
+
|
|
351
|
+
**Example invocation:**
|
|
352
|
+
```
|
|
353
|
+
@performance-optimizer Use the performance-profiling skill on the /api/reports endpoint.
|
|
354
|
+
Profile the database queries and identify the N+1 pattern.
|
|
355
|
+
```
|
|
356
|
+
|
|
357
|
+
**When to use:** When users report slowness, before releasing a performance-sensitive feature, or when a new feature has been added to a hot code path.
|
|
358
|
+
|
|
359
|
+
---
|
|
360
|
+
|
|
361
|
+
### Architecture
|
|
362
|
+
|
|
363
|
+
#### `multi-repo`
|
|
364
|
+
|
|
365
|
+
Patterns for coordinating changes across multiple repositories in a microservice system. Covers: reading the sub-repo registry, building a dependency graph (upstream-api → downstream-consumer → gateway), classifying changes as breaking or non-breaking, writing contract-first change specifications, ordering implementation so upstream services are deployed before downstream consumers, and verifying cross-repo integration.
|
|
366
|
+
|
|
367
|
+
**Example invocation:**
|
|
368
|
+
```
|
|
369
|
+
@multi-repo-coordinator Use the multi-repo skill to plan the user-service API change.
|
|
370
|
+
Identify all downstream consumers and produce an ordered change plan.
|
|
371
|
+
```
|
|
372
|
+
|
|
373
|
+
**When to use:** Any time a change affects more than one repository. Do not use for single-repo work, even if the repo is part of a larger microservice system.
|
|
374
|
+
|
|
375
|
+
---
|
|
376
|
+
|
|
377
|
+
#### `parallel-execute`
|
|
378
|
+
|
|
379
|
+
Coordinates parallel agent execution for independent workstreams. Provides the WAVE TABLE format, the standard wave delegation syntax, the independence verification rules (parallel = different files + no shared state + no inter-task dependency), the merge protocol for when parallel tracks produce overlapping output, and the conflict resolution hierarchy.
|
|
380
|
+
|
|
381
|
+
**Example invocation:**
|
|
382
|
+
```
|
|
383
|
+
@parallel-coordinator Use the parallel-execute skill to run Wave 3 of the current plan.
|
|
384
|
+
@coder and @tester are independent — start both simultaneously.
|
|
385
|
+
```
|
|
386
|
+
|
|
387
|
+
**When to use:** When a plan has tasks that can run simultaneously. The skill makes independence explicit so merge conflicts are caught before they occur.
|
|
388
|
+
|
|
389
|
+
---
|
|
390
|
+
|
|
391
|
+
### Documentation
|
|
392
|
+
|
|
393
|
+
#### `documentation-writer`
|
|
394
|
+
|
|
395
|
+
Technical writing standards for documentation that developers actually read. Covers: README structure (name → quick start → installation → usage → API reference → contributing → license), API reference format (function signature, parameters with types and defaults, return type, usage example, error conditions), changelog format (Keep a Changelog: Added / Changed / Deprecated / Removed / Fixed / Security), and inline comment guidelines (explain the why, not the what; mark known footguns explicitly).
|
|
396
|
+
|
|
397
|
+
**Example invocation:**
|
|
398
|
+
```
|
|
399
|
+
@writer Use the documentation-writer skill to write the README for the payments module.
|
|
400
|
+
Cover: purpose, quick start, configuration, and API reference.
|
|
401
|
+
Verify all examples compile before including them.
|
|
402
|
+
```
|
|
403
|
+
|
|
404
|
+
**When to use:** When creating any new documentation file, or when existing documentation is out of date or missing key sections.
|
|
405
|
+
|
|
406
|
+
---
|
|
407
|
+
|
|
408
|
+
← [Back to Index](index.md)
|