@hassangameryt/freeflow 0.2.0 → 0.4.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/.agents/plugins/marketplace.json +1 -1
- package/.claude-plugin/marketplace.json +4 -4
- package/{plugins/freeflow/.claude-plugin → .claude-plugin}/plugin.json +5 -2
- package/{plugins/freeflow/.codex-plugin → .codex-plugin}/plugin.json +8 -9
- package/README.md +194 -127
- package/assets/feedback-loop.png +0 -0
- package/assets/freeflow-plugin-icon.png +0 -0
- package/assets/freeflow_workflow_map.png +0 -0
- package/assets/workflow.png +0 -0
- package/command-surface.json +129 -0
- package/hooks/freeflow-runtime-context.mjs +419 -0
- package/hooks/tests/check-runtime-context-hook.sh +223 -0
- package/package.json +41 -22
- package/pi-extension/dist/index.js +269 -0
- package/pi-extension/dist/integrations/mcp-config.js +29 -0
- package/pi-extension/dist/output-router/host-producer-identification.js +232 -0
- package/pi-extension/dist/output-router/native-safety-net.js +216 -0
- package/pi-extension/dist/output-router/observed-tool-routing.js +122 -0
- package/pi-extension/dist/output-router/renderers.js +1023 -0
- package/pi-extension/dist/output-router/router-tools.js +554 -0
- package/pi-extension/dist/output-router/schemas.js +383 -0
- package/pi-extension/dist/output-router/status.js +744 -0
- package/pi-extension/dist/output-router/utils.js +502 -0
- package/pi-extension/dist/runtime/runtime-context.js +798 -0
- package/pi-extension/dist/settings/settings-tui.js +314 -0
- package/pi-extension/dist/settings/settings-ui.js +1487 -0
- package/pi-extension/freeflow/index.js +1 -0
- package/pi-extension/src/index.ts +295 -0
- package/pi-extension/src/integrations/mcp-config.ts +32 -0
- package/pi-extension/src/output-router/host-producer-identification.ts +256 -0
- package/pi-extension/src/output-router/native-safety-net.ts +248 -0
- package/pi-extension/src/output-router/observed-tool-routing.ts +134 -0
- package/pi-extension/src/output-router/renderers.ts +1108 -0
- package/pi-extension/src/output-router/router-tools.ts +579 -0
- package/pi-extension/src/output-router/schemas.ts +387 -0
- package/pi-extension/src/output-router/status.ts +791 -0
- package/pi-extension/src/output-router/utils.ts +554 -0
- package/pi-extension/src/runtime/runtime-context.ts +895 -0
- package/pi-extension/src/settings/settings-tui.ts +408 -0
- package/pi-extension/src/settings/settings-ui.ts +1730 -0
- package/pi-extension/tests/integration/pi-extension.test.js +4018 -0
- package/pi-extension/tests/output-router/observed-producers.test.js +132 -0
- package/pi-extension/tests/output-router/search.test.js +722 -0
- package/pi-extension/tests/settings/settings-tui.test.js +243 -0
- package/pi-extension/tsconfig.json +16 -0
- package/{plugins/freeflow/router/dist → router/dist/benchmarks}/benchmark-harness.d.ts +16 -13
- package/router/dist/benchmarks/benchmark-harness.js +92 -0
- package/router/dist/benchmarks/benchmarks.d.ts +109 -0
- package/router/dist/benchmarks/benchmarks.js +979 -0
- package/router/dist/benchmarks/codex-qa-benchmarks.d.ts +95 -0
- package/router/dist/benchmarks/codex-qa-benchmarks.js +500 -0
- package/router/dist/benchmarks/command-benchmarks.d.ts +143 -0
- package/router/dist/benchmarks/command-benchmarks.js +698 -0
- package/router/dist/benchmarks/context-mode-normalized-benchmarks.d.ts +82 -0
- package/router/dist/benchmarks/context-mode-normalized-benchmarks.js +773 -0
- package/router/dist/benchmarks/context-mode-real-deep-benchmark.d.ts +132 -0
- package/router/dist/benchmarks/context-mode-real-deep-benchmark.js +1380 -0
- package/router/dist/benchmarks/context-saving-baseline.d.ts +60 -0
- package/router/dist/benchmarks/context-saving-baseline.js +470 -0
- package/router/dist/benchmarks/index-benchmarks.d.ts +103 -0
- package/router/dist/benchmarks/index-benchmarks.js +862 -0
- package/router/dist/benchmarks/storage-policy-benchmarks.d.ts +101 -0
- package/router/dist/benchmarks/storage-policy-benchmarks.js +618 -0
- package/router/dist/benchmarks/vault-index-benchmarks.d.ts +56 -0
- package/router/dist/benchmarks/vault-index-benchmarks.js +322 -0
- package/router/dist/config/config.d.ts +103 -0
- package/router/dist/config/config.js +632 -0
- package/{plugins/freeflow/router/dist → router/dist/config}/router-contract.d.ts +2 -2
- package/router/dist/config/router-contract.js +54 -0
- package/{plugins/freeflow/router/dist → router/dist/config}/schema.d.ts +19 -10
- package/router/dist/config/schema.js +648 -0
- package/router/dist/config/types.d.ts +573 -0
- package/router/dist/config/types.js +41 -0
- package/router/dist/evidence/bounded-evidence.d.ts +40 -0
- package/router/dist/evidence/bounded-evidence.js +323 -0
- package/router/dist/evidence/evidence-range-selector.d.ts +24 -0
- package/router/dist/evidence/evidence-range-selector.js +232 -0
- package/router/dist/evidence/evidence-search.d.ts +27 -0
- package/router/dist/evidence/evidence-search.js +490 -0
- package/{plugins/freeflow/router/dist → router/dist/evidence}/evidence.d.ts +18 -18
- package/router/dist/evidence/evidence.js +200 -0
- package/router/dist/evidence/failure-contracts.d.ts +37 -0
- package/router/dist/evidence/failure-contracts.js +166 -0
- package/router/dist/evidence/line-ranges.d.ts +24 -0
- package/router/dist/evidence/line-ranges.js +22 -0
- package/router/dist/experiments/local-index.d.ts +64 -0
- package/router/dist/experiments/local-index.js +581 -0
- package/router/dist/index.d.ts +30 -0
- package/router/dist/index.js +32 -0
- package/router/dist/local/local-traversal.d.ts +18 -0
- package/router/dist/local/local-traversal.js +334 -0
- package/router/dist/processing/engine.d.ts +132 -0
- package/router/dist/processing/engine.js +533 -0
- package/router/dist/processing/reducers.d.ts +280 -0
- package/router/dist/processing/reducers.js +1673 -0
- package/router/dist/processing/renderers.d.ts +31 -0
- package/router/dist/processing/renderers.js +195 -0
- package/router/dist/processing/scripts.d.ts +91 -0
- package/router/dist/processing/scripts.js +386 -0
- package/{plugins/freeflow/router/dist → router/dist/repo}/repo-traversal.d.ts +9 -9
- package/router/dist/repo/repo-traversal.js +245 -0
- package/router/dist/routing/observed-reducers.d.ts +41 -0
- package/router/dist/routing/observed-reducers.js +661 -0
- package/router/dist/routing/observed-routing.d.ts +26 -0
- package/router/dist/routing/observed-routing.js +378 -0
- package/router/dist/routing/parsers.d.ts +16 -0
- package/router/dist/routing/parsers.js +521 -0
- package/router/dist/routing/run-filters.d.ts +60 -0
- package/router/dist/routing/run-filters.js +238 -0
- package/router/dist/routing/run-reducers.d.ts +49 -0
- package/router/dist/routing/run-reducers.js +122 -0
- package/router/dist/sandbox/adapter-roots.d.ts +46 -0
- package/router/dist/sandbox/adapter-roots.js +66 -0
- package/router/dist/sandbox/eryx-python-adapter.d.ts +13 -0
- package/router/dist/sandbox/eryx-python-adapter.js +868 -0
- package/router/dist/sandbox/jq-wasm-adapter.d.ts +9 -0
- package/router/dist/sandbox/jq-wasm-adapter.js +429 -0
- package/router/dist/sandbox/quickjs-wasi-adapter.d.ts +13 -0
- package/router/dist/sandbox/quickjs-wasi-adapter.js +384 -0
- package/router/dist/sandbox/script-sandbox.d.ts +134 -0
- package/router/dist/sandbox/script-sandbox.js +337 -0
- package/router/dist/setup/script-transform-adapters.d.ts +32 -0
- package/router/dist/setup/script-transform-adapters.js +278 -0
- package/router/dist/tools/batch.d.ts +33 -0
- package/router/dist/tools/batch.js +586 -0
- package/router/dist/tools/run.d.ts +62 -0
- package/router/dist/tools/run.js +1304 -0
- package/router/dist/tools/search.d.ts +66 -0
- package/router/dist/tools/search.js +1364 -0
- package/router/dist/transform/engine.d.ts +168 -0
- package/router/dist/transform/engine.js +2072 -0
- package/router/dist/vault/vault-index.d.ts +125 -0
- package/router/dist/vault/vault-index.js +416 -0
- package/router/dist/vault/vault.d.ts +138 -0
- package/router/dist/vault/vault.js +630 -0
- package/runtime/interaction-contract.md +16 -0
- package/skills/bypass/SKILL.md +82 -0
- package/skills/commit-work/SKILL.md +106 -0
- package/skills/commit-work/references/staging-decisions.md +73 -0
- package/skills/decision-gate/SKILL.md +48 -0
- package/skills/design-for-depth/SKILL.md +106 -0
- package/skills/design-for-depth/references/design-pressure-signals.md +314 -0
- package/skills/design-for-depth/references/interface-design-loop.md +156 -0
- package/skills/design-for-depth/references/software-design-philosophy.md +248 -0
- package/skills/diagnose-failure/SKILL.md +105 -0
- package/skills/diagnose-failure/references/diagnostic-loop-catalog.md +36 -0
- package/skills/diagnose-failure/references/flaky-and-performance.md +43 -0
- package/skills/discuss/SKILL.md +121 -0
- package/skills/discuss/references/checkpoints.md +66 -0
- package/skills/evaluate-skill/SKILL.md +105 -0
- package/skills/evaluate-skill/references/definition-schema.md +345 -0
- package/skills/evaluate-skill/references/evaluation-design.md +86 -0
- package/skills/evaluate-skill/references/execution-and-evidence.md +85 -0
- package/skills/evaluate-skill/references/review-and-revision.md +51 -0
- package/skills/evaluate-skill/scripts/lib/definitions.mjs +296 -0
- package/skills/evaluate-skill/scripts/lib/evidence.mjs +46 -0
- package/skills/evaluate-skill/scripts/lib/grade-comparison.mjs +60 -0
- package/skills/evaluate-skill/scripts/lib/grade-interaction.mjs +148 -0
- package/skills/evaluate-skill/scripts/lib/grade-support.mjs +126 -0
- package/skills/evaluate-skill/scripts/lib/grade-workspace.mjs +192 -0
- package/skills/evaluate-skill/scripts/lib/grade.mjs +56 -0
- package/skills/evaluate-skill/scripts/lib/pi.mjs +489 -0
- package/skills/evaluate-skill/scripts/lib/process.mjs +79 -0
- package/skills/evaluate-skill/scripts/lib/rpc.mjs +444 -0
- package/skills/evaluate-skill/scripts/lib/runner.mjs +346 -0
- package/skills/evaluate-skill/scripts/lib/sandbox.mjs +409 -0
- package/skills/evaluate-skill/scripts/lib/view.mjs +337 -0
- package/skills/evaluate-skill/scripts/pi-guard.mjs +164 -0
- package/skills/evaluate-skill/scripts/skill-eval.mjs +101 -0
- package/skills/execute-work/SKILL.md +99 -0
- package/skills/execute-work/references/code-practices.md +78 -0
- package/skills/execute-work/references/execution-loop.md +77 -0
- package/skills/finish-branch/SKILL.md +117 -0
- package/skills/finish-branch/references/integration-options.md +80 -0
- package/skills/handoff/SKILL.md +92 -0
- package/skills/handoff/references/templates.md +141 -0
- package/skills/launch-work/SKILL.md +116 -0
- package/skills/launch-work/references/launch-readiness.md +85 -0
- package/skills/migration-work/SKILL.md +115 -0
- package/skills/migration-work/references/migration-lifecycle.md +82 -0
- package/skills/mode-contract/SKILL.md +82 -0
- package/skills/output-router/SKILL.md +206 -0
- package/skills/output-router/references/safety-policy.md +40 -0
- package/skills/release-work/SKILL.md +118 -0
- package/skills/release-work/references/release-evidence.md +78 -0
- package/skills/review-artifact/SKILL.md +126 -0
- package/skills/review-artifact/references/reviewer-prompt.md +148 -0
- package/skills/review-work/SKILL.md +126 -0
- package/skills/review-work/references/reviewer-prompt.md +134 -0
- package/skills/review-work/references/security-risk-lens.md +67 -0
- package/skills/setup-freeflow/SKILL.md +98 -0
- package/skills/setup-freeflow/references/activation-contract.md +120 -0
- package/skills/setup-freeflow/references/host-setup.md +72 -0
- package/skills/setup-freeflow/references/output-router-setup.md +110 -0
- package/skills/simplify-code/SKILL.md +80 -0
- package/skills/simplify-code/references/simplification-patterns.md +70 -0
- package/skills/tdd/SKILL.md +96 -0
- package/skills/tdd/references/test-design.md +96 -0
- package/skills/track-work/SKILL.md +84 -0
- package/skills/track-work/references/working-record-schema.md +378 -0
- package/skills/verify-work/SKILL.md +85 -0
- package/skills/verify-work/references/browser-runtime-evidence.md +55 -0
- package/skills/verify-work/references/integration-evidence.md +51 -0
- package/skills/verify-work/references/performance-evidence.md +57 -0
- package/skills/workflow/SKILL.md +91 -0
- package/skills/workflow/references/domain-skill-composition.md +57 -0
- package/skills/workflow/references/workflow-loop.md +92 -0
- package/skills/write-plan/SKILL.md +123 -0
- package/skills/write-plan/references/plan-shapes.md +156 -0
- package/skills/write-skill/SKILL.md +119 -0
- package/skills/write-skill/references/activation-boundaries.md +62 -0
- package/skills/write-skill/references/agent-first-instructions.md +87 -0
- package/skills/write-skill/references/progressive-disclosure.md +63 -0
- package/skills/write-skill/scripts/lib/skill-author.mjs +653 -0
- package/skills/write-skill/scripts/skill-author.mjs +104 -0
- package/skills/write-spec/SKILL.md +104 -0
- package/skills/write-spec/references/artifact-standards.md +86 -0
- package/skills/write-spec/references/decision-records.md +77 -0
- package/skills/write-spec/references/spec-shapes.md +128 -0
- package/plugins/freeflow/command-surface.json +0 -77
- package/plugins/freeflow/docs/README.md +0 -40
- package/plugins/freeflow/docs/adr/0001-three-modes.md +0 -27
- package/plugins/freeflow/docs/adr/0002-evals-before-hooks.md +0 -17
- package/plugins/freeflow/docs/adr/0003-release-boundary.md +0 -21
- package/plugins/freeflow/docs/adr/0004-research-replaces-shallow-discovery-skills.md +0 -26
- package/plugins/freeflow/docs/adr/README.md +0 -8
- package/plugins/freeflow/docs/architecture.md +0 -86
- package/plugins/freeflow/docs/output-router.md +0 -212
- package/plugins/freeflow/docs/release-evidence.md +0 -69
- package/plugins/freeflow/docs/skills.md +0 -43
- package/plugins/freeflow/docs/workflow.md +0 -57
- package/plugins/freeflow/hooks/freeflow-runtime-context.mjs +0 -257
- package/plugins/freeflow/pi-extension/index.js +0 -1176
- package/plugins/freeflow/router/dist/benchmark-harness.js +0 -92
- package/plugins/freeflow/router/dist/benchmarks.d.ts +0 -102
- package/plugins/freeflow/router/dist/benchmarks.js +0 -880
- package/plugins/freeflow/router/dist/bounded-evidence.d.ts +0 -40
- package/plugins/freeflow/router/dist/bounded-evidence.js +0 -310
- package/plugins/freeflow/router/dist/codex-qa-benchmarks.d.ts +0 -91
- package/plugins/freeflow/router/dist/codex-qa-benchmarks.js +0 -461
- package/plugins/freeflow/router/dist/command-benchmarks.d.ts +0 -128
- package/plugins/freeflow/router/dist/command-benchmarks.js +0 -652
- package/plugins/freeflow/router/dist/config.d.ts +0 -22
- package/plugins/freeflow/router/dist/config.js +0 -114
- package/plugins/freeflow/router/dist/evidence-range-selector.d.ts +0 -22
- package/plugins/freeflow/router/dist/evidence-range-selector.js +0 -180
- package/plugins/freeflow/router/dist/evidence-search.d.ts +0 -25
- package/plugins/freeflow/router/dist/evidence-search.js +0 -450
- package/plugins/freeflow/router/dist/evidence.js +0 -196
- package/plugins/freeflow/router/dist/experimental-local-index.d.ts +0 -1
- package/plugins/freeflow/router/dist/experimental-local-index.js +0 -1
- package/plugins/freeflow/router/dist/experiments/local-index.d.ts +0 -58
- package/plugins/freeflow/router/dist/experiments/local-index.js +0 -562
- package/plugins/freeflow/router/dist/index-benchmarks.d.ts +0 -84
- package/plugins/freeflow/router/dist/index-benchmarks.js +0 -458
- package/plugins/freeflow/router/dist/index.d.ts +0 -12
- package/plugins/freeflow/router/dist/index.js +0 -12
- package/plugins/freeflow/router/dist/line-ranges.d.ts +0 -22
- package/plugins/freeflow/router/dist/line-ranges.js +0 -22
- package/plugins/freeflow/router/dist/parsers.d.ts +0 -16
- package/plugins/freeflow/router/dist/parsers.js +0 -473
- package/plugins/freeflow/router/dist/repo-traversal.js +0 -242
- package/plugins/freeflow/router/dist/retrieve.d.ts +0 -33
- package/plugins/freeflow/router/dist/retrieve.js +0 -855
- package/plugins/freeflow/router/dist/router-contract.js +0 -54
- package/plugins/freeflow/router/dist/run.d.ts +0 -26
- package/plugins/freeflow/router/dist/run.js +0 -356
- package/plugins/freeflow/router/dist/schema.js +0 -354
- package/plugins/freeflow/router/dist/types.d.ts +0 -234
- package/plugins/freeflow/router/dist/types.js +0 -9
- package/plugins/freeflow/router/dist/vault.d.ts +0 -80
- package/plugins/freeflow/router/dist/vault.js +0 -484
- package/plugins/freeflow/skills/bypass/SKILL.md +0 -68
- package/plugins/freeflow/skills/commit-work/SKILL.md +0 -98
- package/plugins/freeflow/skills/commit-work/references/staging-decisions.md +0 -51
- package/plugins/freeflow/skills/diagnose-failure/SKILL.md +0 -95
- package/plugins/freeflow/skills/diagnose-failure/references/feedback-loop-catalog.md +0 -25
- package/plugins/freeflow/skills/diagnose-failure/references/flaky-and-performance.md +0 -31
- package/plugins/freeflow/skills/evaluate-skill/SKILL.md +0 -96
- package/plugins/freeflow/skills/evaluate-skill/references/eval-patterns.md +0 -41
- package/plugins/freeflow/skills/evaluate-skill/references/grading-priority.md +0 -33
- package/plugins/freeflow/skills/execute-plan/SKILL.md +0 -132
- package/plugins/freeflow/skills/execute-plan/references/execution-map.md +0 -122
- package/plugins/freeflow/skills/handoff/SKILL.md +0 -66
- package/plugins/freeflow/skills/handoff/references/templates.md +0 -64
- package/plugins/freeflow/skills/interview-gate/SKILL.md +0 -90
- package/plugins/freeflow/skills/mode-contract/SKILL.md +0 -79
- package/plugins/freeflow/skills/output-router/SKILL.md +0 -69
- package/plugins/freeflow/skills/output-router/references/safety-policy.md +0 -33
- package/plugins/freeflow/skills/research/ARTIFACT-DESTINATIONS.md +0 -58
- package/plugins/freeflow/skills/research/CHECKPOINTS.md +0 -74
- package/plugins/freeflow/skills/research/LANGUAGE.md +0 -61
- package/plugins/freeflow/skills/research/SKILL.md +0 -128
- package/plugins/freeflow/skills/review-artifact/SKILL.md +0 -115
- package/plugins/freeflow/skills/review-artifact/references/reviewer-prompt.md +0 -56
- package/plugins/freeflow/skills/review-work/SKILL.md +0 -96
- package/plugins/freeflow/skills/review-work/references/reviewer-prompt.md +0 -97
- package/plugins/freeflow/skills/setup-freeflow/SKILL.md +0 -94
- package/plugins/freeflow/skills/setup-freeflow/references/activation-contract.md +0 -99
- package/plugins/freeflow/skills/setup-freeflow/references/host-setup.md +0 -35
- package/plugins/freeflow/skills/setup-freeflow/references/output-router-setup.md +0 -52
- package/plugins/freeflow/skills/verify-work/SKILL.md +0 -62
- package/plugins/freeflow/skills/workflow/SKILL.md +0 -95
- package/plugins/freeflow/skills/workflow/references/workflow-map.md +0 -102
- package/plugins/freeflow/skills/write-plan/SKILL.md +0 -88
- package/plugins/freeflow/skills/write-plan/references/plan-shapes.md +0 -70
- package/plugins/freeflow/skills/write-skill/SKILL.md +0 -88
- package/plugins/freeflow/skills/write-spec/SKILL.md +0 -90
- package/plugins/freeflow/skills/write-spec/references/artifact-standards.md +0 -67
- package/plugins/freeflow/skills/write-spec/references/spec-shapes.md +0 -69
- /package/{plugins/freeflow/assets → assets}/freeflow-plugin-icon-transparent.png +0 -0
- /package/{plugins/freeflow/hooks → hooks}/hooks.json +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://anthropic.com/claude-code/marketplace.schema.json",
|
|
3
3
|
"name": "freeflow",
|
|
4
|
-
"description": "
|
|
4
|
+
"description": "Feedback-based control system for coding agents.",
|
|
5
5
|
"owner": {
|
|
6
6
|
"name": "Hassan Mohiddin",
|
|
7
7
|
"url": "https://github.com/hassan-mohiddin"
|
|
@@ -9,10 +9,10 @@
|
|
|
9
9
|
"plugins": [
|
|
10
10
|
{
|
|
11
11
|
"name": "freeflow",
|
|
12
|
-
"description": "
|
|
13
|
-
"version": "0.
|
|
12
|
+
"description": "Feedback-based control for coding agents.",
|
|
13
|
+
"version": "0.4.0",
|
|
14
14
|
"category": "development",
|
|
15
|
-
"source": "./
|
|
15
|
+
"source": "./",
|
|
16
16
|
"author": {
|
|
17
17
|
"name": "Hassan Mohiddin"
|
|
18
18
|
},
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "freeflow",
|
|
3
|
-
"description": "
|
|
4
|
-
"version": "0.
|
|
3
|
+
"description": "Freeflow gives coding agents an Interaction Contract, evidence-driven Workflow, focused methods, and durable task memory across conversation, workflow, and strict-workflow modes.",
|
|
4
|
+
"version": "0.4.0",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Hassan Mohiddin"
|
|
7
7
|
},
|
|
@@ -12,8 +12,11 @@
|
|
|
12
12
|
"workflow",
|
|
13
13
|
"skills",
|
|
14
14
|
"agents",
|
|
15
|
+
"feedback-loop",
|
|
16
|
+
"task-memory",
|
|
15
17
|
"planning",
|
|
16
18
|
"verification",
|
|
19
|
+
"review",
|
|
17
20
|
"claude-code",
|
|
18
21
|
"codex"
|
|
19
22
|
]
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "freeflow",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "0.4.0",
|
|
4
|
+
"description": "Feedback-based control system for coding agents.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Hassan Mohiddin"
|
|
7
7
|
},
|
|
@@ -12,23 +12,22 @@
|
|
|
12
12
|
"workflow",
|
|
13
13
|
"skills",
|
|
14
14
|
"agents",
|
|
15
|
+
"feedback-loop",
|
|
16
|
+
"task-memory",
|
|
15
17
|
"planning",
|
|
16
18
|
"verification",
|
|
19
|
+
"review",
|
|
17
20
|
"codex",
|
|
18
21
|
"claude"
|
|
19
22
|
],
|
|
20
23
|
"skills": "./skills/",
|
|
21
24
|
"interface": {
|
|
22
25
|
"displayName": "Freeflow",
|
|
23
|
-
"shortDescription": "
|
|
24
|
-
"longDescription": "Freeflow
|
|
26
|
+
"shortDescription": "Feedback-based control for coding agents.",
|
|
27
|
+
"longDescription": "Freeflow gives coding agents an Interaction Contract, evidence-driven Workflow, focused methods, and durable task memory across conversation, workflow, and strict-workflow modes.",
|
|
25
28
|
"developerName": "Hassan Mohiddin",
|
|
26
29
|
"category": "Coding",
|
|
27
|
-
"capabilities": [
|
|
28
|
-
"Interactive",
|
|
29
|
-
"Read",
|
|
30
|
-
"Write"
|
|
31
|
-
],
|
|
30
|
+
"capabilities": ["Interactive", "Read", "Write"],
|
|
32
31
|
"defaultPrompt": [
|
|
33
32
|
"Use Freeflow workflow mode for this task.",
|
|
34
33
|
"Keep this in conversation mode.",
|
package/README.md
CHANGED
|
@@ -1,73 +1,142 @@
|
|
|
1
1
|
# Freeflow
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
**A feedback-based control system for coding agents.**
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Freeflow helps coding agents move through consequential work without a rigid pipeline, silent decisions, or context-heavy ceremony.
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
> Use feedback to choose the smallest useful next action.
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
> Re-enter the narrowest owning activity when evidence changes the path.
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
> Memory preserves context. It does not create authority.
|
|
12
12
|
|
|
13
|
-
|
|
14
|
-
- `workflow`: default for consequential work; use the workflow spine and scale detail to risk.
|
|
15
|
-
- `strict-workflow`: high-risk or hard-to-reverse work with stronger gates.
|
|
13
|
+
The active agent still does the work. Freeflow supplies the interaction contract, workflow routing, focused methods, task memory, and evidence discipline that help it decide what to do next—and when not to edit.
|
|
16
14
|
|
|
17
|
-
|
|
15
|
+
## Why Freeflow
|
|
18
16
|
|
|
19
|
-
|
|
17
|
+
Coding agents are strong at mutation and weak at control boundaries:
|
|
20
18
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
19
|
+
| Common failure | Freeflow response |
|
|
20
|
+
| --- | --- |
|
|
21
|
+
| A question or tentative idea becomes an edit. | The Interaction Contract answers first and waits for clear action authority. |
|
|
22
|
+
| A prompt conflicts with tests, policy, or accepted behavior. | Decision Gate names the conflict and stops before mutation. |
|
|
23
|
+
| Work follows a plan after evidence invalidates it. | Workflow routes from evidence and preserves unaffected work. |
|
|
24
|
+
| Every task gets a spec, plan, review, and status ceremony. | Workflow enters at the narrowest useful owner and creates artifacts only when they help. |
|
|
25
|
+
| A passing command becomes an unsupported completion claim. | Verify Work matches direct evidence to the exact claim and boundary. |
|
|
26
|
+
| Review findings are treated as commands. | The active agent adjudicates; corrections require existing or explicit authority. |
|
|
27
|
+
| Compaction loses task state or imports stale branch authority. | Track Work restores the complete Working Record and reconciles it with the current conversation and live repo. |
|
|
28
|
+
| Large search, logs, and test output consume the context window. | Output Router returns focused evidence with exact recovery where configured. |
|
|
31
29
|
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
Check -. new evidence or failed check .-> Discover
|
|
36
|
-
```
|
|
30
|
+
Freeflow is not a new agent or workflow engine. It is a portable control layer for Codex, Claude Code, Pi, and similar coding environments.
|
|
31
|
+
|
|
32
|
+
## The Control System
|
|
37
33
|
|
|
38
|
-
|
|
34
|
+
One user interaction is an **Interaction Lifecycle**:
|
|
39
35
|
|
|
40
|
-
|
|
36
|
+

|
|
37
|
+
|
|
38
|
+
```text
|
|
39
|
+
[Entry] -> [Feedback Loop when needed] -> [Supported Exit]
|
|
40
|
+
^ ^ | |
|
|
41
|
+
| |________| |
|
|
42
|
+
|__________________________________________|
|
|
43
|
+
later user turn or evidence
|
|
44
|
+
```
|
|
41
45
|
|
|
42
|
-
|
|
46
|
+
When work is needed, the inner **Feedback Loop** is:
|
|
43
47
|
|
|
44
|
-
|
|
45
|
-
flowchart LR
|
|
46
|
-
Trigger{new evidence<br/>conflict<br/>failed check<br/>owner decision}
|
|
47
|
-
Decide{changes<br/>next action?}
|
|
48
|
-
Continue[continue]
|
|
49
|
-
Reenter[clarify / research<br/>revise spec or plan<br/>diagnose / split / stop]
|
|
48
|
+

|
|
50
49
|
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
50
|
+
```text
|
|
51
|
+
orient to accepted intent, task memory, and live evidence
|
|
52
|
+
-> use the narrowest owning skill
|
|
53
|
+
-> implement, discuss, test, or observe
|
|
54
|
+
-> verify what the evidence proves
|
|
55
|
+
-> when supported, self-review once
|
|
56
|
+
-> continue, correct, diagnose, revise, ask, defer, or stop
|
|
55
57
|
```
|
|
56
58
|
|
|
57
|
-
|
|
59
|
+
A Supported Exit may answer, wait, pause, hand off, defer, stop, preserve a controlled boundary, or complete. Freeflow does not invent another phase merely because one exists in the full skill pack.
|
|
60
|
+
|
|
61
|
+
## Core Principles
|
|
62
|
+
|
|
63
|
+
- **The active agent owns the current route.** Independent review may add judgment; it does not take over routing or verification.
|
|
64
|
+
- **Verification is factual. Review is judgment.** The active agent verifies; self-review is silent; selected independent review uses a separate context.
|
|
65
|
+
- **Pass is not the only review exit.** Pass, Non-blocking, Inconclusive, and Blocking all end review and return evidence to Workflow.
|
|
66
|
+
- **Review findings do not authorize edits.** Ask for unapproved corrections and any warranted focused follow-up together.
|
|
67
|
+
- **Specs and Plans have separate jobs and separate reviews.** Working Records carry evolving state; Plans remain stable ordered strategy.
|
|
68
|
+
- **A slice may span several feedback iterations.** Extend its boundary write-ahead only while the intended result remains coherent.
|
|
69
|
+
- **Diagnose before redesigning.** Ordinary mistakes do not prove structural failure.
|
|
70
|
+
- **Bypass skips optional pressure, not authority, safety, evidence, or selected review.**
|
|
71
|
+
|
|
72
|
+
## Modes
|
|
73
|
+
|
|
74
|
+
Freeflow has exactly three modes:
|
|
75
|
+
|
|
76
|
+
| Mode | Use for | Guardrail |
|
|
77
|
+
| --- | --- | --- |
|
|
78
|
+
| `conversation` | Discussion, critique, explanation, and read-only exploration | Agent-performed mutation requires switching mode. |
|
|
79
|
+
| `workflow` | Normal consequential or mutating work | Use the adaptive lifecycle and proportionate evidence. |
|
|
80
|
+
| `strict-workflow` | High-risk or hard-to-reverse work | Stronger decision, evidence, and checkpoint pressure without review after every slice. |
|
|
81
|
+
|
|
82
|
+
Task type and direct skill calls do not silently switch mode.
|
|
83
|
+
|
|
84
|
+
## Skills And Routing
|
|
85
|
+
|
|
86
|
+
Freeflow ships 26 skill packages:
|
|
87
|
+
|
|
88
|
+
- 25 active model/contributor skills;
|
|
89
|
+
- Output Router as an optional capability loaded only when effective.
|
|
90
|
+
|
|
91
|
+
See the [typed skill routing map](https://github.com/hassan-mohiddin/freeflow/blob/main/plugin-docs/skill-routing.md) for every owner, sibling route, and reference dependency. See [Workflow](https://github.com/hassan-mohiddin/freeflow/blob/main/plugin-docs/workflow.md) for the lifecycle and [Architecture](https://github.com/hassan-mohiddin/freeflow/blob/main/plugin-docs/architecture.md) for delivery and configuration.
|
|
58
92
|
|
|
59
|
-
|
|
93
|
+
## Task Memory Without A Second Task System
|
|
60
94
|
|
|
61
|
-
|
|
95
|
+
Track Work maintains one Working Record for an ongoing task:
|
|
62
96
|
|
|
63
|
-
|
|
97
|
+
- current context;
|
|
98
|
+
- one current slice;
|
|
99
|
+
- ordered proposed slices;
|
|
100
|
+
- task-local decisions and hypotheses;
|
|
101
|
+
- evidence pointers and completed history;
|
|
102
|
+
- one next useful action;
|
|
103
|
+
- optional inert Notes.
|
|
104
|
+
|
|
105
|
+
It records state transitions, not every edit or comment. Routine in-slice feedback is not checkpoint history. After compaction, summarization, clear, resume, or session navigation, Workflow reads the complete record before continuing and treats it as memory rather than authority.
|
|
106
|
+
|
|
107
|
+
## Context Is For Decisions, Not Dumps
|
|
108
|
+
|
|
109
|
+
Output Router keeps noisy evidence recoverable without forcing all of it into model context.
|
|
110
|
+
|
|
111
|
+
| Need | Use |
|
|
112
|
+
| --- | --- |
|
|
113
|
+
| Search repo, explicit local sources, or routed evidence | `freeflow_search` |
|
|
114
|
+
| Run noisy tests, builds, typechecks, logs, or diagnostics | `freeflow_run` |
|
|
115
|
+
| Run independent searches/checks and aggregate facts | `freeflow_batch` |
|
|
116
|
+
| Compute bounded subsets or statistics | `freeflow_search action=transform` |
|
|
117
|
+
| Inspect configuration, vault, routing, or adapters | `freeflow_status` |
|
|
118
|
+
| Read a known file or run a tiny exact command | Native host tools |
|
|
119
|
+
|
|
120
|
+
Output Router is disabled by default. Setup enables it only after an explicit request.
|
|
121
|
+
|
|
122
|
+
## Evidence, Not Marketing Certainty
|
|
123
|
+
|
|
124
|
+
Historical v0.1 workflow fixtures and current router benchmarks remain reproducible evidence, not universal guarantees. The current adaptive skill candidate is **Unverified** pending baseline-vs-with-skill behavioral evaluation.
|
|
125
|
+
|
|
126
|
+
| Evidence | Result |
|
|
127
|
+
| --- | --- |
|
|
128
|
+
| Historical v0.1 acceptance suite | 15/15 fixtures passed after measured fixes. |
|
|
129
|
+
| Historical source-truth conflict pressure | Baseline 2/10; with-skill 10/10. |
|
|
130
|
+
| Retrieval benchmark | 7/7 gated fixtures; 98.54% weighted context reduction. |
|
|
131
|
+
| Command-output benchmark | 8/8 fixtures with exact recovery; 85.03% weighted reduction. |
|
|
132
|
+
| Pi observed-routing eval | 28/28 objective gates; 82.2% overall byte reduction. |
|
|
133
|
+
|
|
134
|
+
See [release evidence](https://github.com/hassan-mohiddin/freeflow/blob/main/plugin-docs/release-evidence.md) for boundaries, reports, and deferred checks.
|
|
64
135
|
|
|
65
136
|
## Install
|
|
66
137
|
|
|
67
138
|
### Codex
|
|
68
139
|
|
|
69
|
-
Register the GitHub repo as a Codex marketplace, refresh it, then install Freeflow:
|
|
70
|
-
|
|
71
140
|
```bash
|
|
72
141
|
codex plugin marketplace add https://github.com/hassan-mohiddin/freeflow.git
|
|
73
142
|
codex plugin marketplace upgrade freeflow
|
|
@@ -75,146 +144,144 @@ codex plugin add freeflow@freeflow
|
|
|
75
144
|
codex plugin list | rg freeflow
|
|
76
145
|
```
|
|
77
146
|
|
|
78
|
-
|
|
147
|
+
Trust the Freeflow `SessionStart` hook from `/hooks` when Codex requests review.
|
|
79
148
|
|
|
80
149
|
### Claude Code
|
|
81
150
|
|
|
82
|
-
Register the marketplace:
|
|
83
|
-
|
|
84
151
|
```bash
|
|
85
152
|
/plugin marketplace add hassan-mohiddin/freeflow
|
|
86
153
|
/plugin install freeflow
|
|
87
154
|
```
|
|
88
155
|
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
```bash
|
|
92
|
-
/plugin install hassan-mohiddin/freeflow
|
|
93
|
-
```
|
|
94
|
-
|
|
95
|
-
### Pi Coding Agent
|
|
96
|
-
|
|
97
|
-
Install Freeflow as a native Pi package from npm:
|
|
156
|
+
### Pi
|
|
98
157
|
|
|
99
158
|
```bash
|
|
100
159
|
pi install npm:@hassangameryt/freeflow
|
|
101
160
|
```
|
|
102
161
|
|
|
103
|
-
Or
|
|
162
|
+
Or:
|
|
104
163
|
|
|
105
164
|
```bash
|
|
106
165
|
pi install git:github.com/hassan-mohiddin/freeflow
|
|
107
166
|
```
|
|
108
167
|
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
```bash
|
|
112
|
-
pi install .
|
|
113
|
-
```
|
|
114
|
-
|
|
115
|
-
The Pi package exposes Freeflow skills and a small extension that registers direct Freeflow commands and loads workflow skill/map context before agent turns.
|
|
116
|
-
|
|
117
|
-
### Required Step 1: Run Setup
|
|
168
|
+
## Activate In A Repository
|
|
118
169
|
|
|
119
|
-
|
|
170
|
+
Run:
|
|
120
171
|
|
|
121
172
|
```text
|
|
122
173
|
/setup-freeflow
|
|
123
174
|
```
|
|
124
175
|
|
|
125
|
-
|
|
176
|
+
Minimal setup creates shared activation:
|
|
126
177
|
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
178
|
+
```json
|
|
179
|
+
{
|
|
180
|
+
"defaultMode": "workflow"
|
|
181
|
+
}
|
|
182
|
+
```
|
|
130
183
|
|
|
131
|
-
|
|
184
|
+
Configuration layers are:
|
|
132
185
|
|
|
133
186
|
```text
|
|
134
|
-
|
|
187
|
+
Pi session capability or mode override
|
|
188
|
+
-> .freeflow/local.json personal core override
|
|
189
|
+
-> .freeflow/config.json shared repository value
|
|
190
|
+
-> built-in default
|
|
135
191
|
```
|
|
136
192
|
|
|
137
|
-
|
|
193
|
+
`.freeflow/config.json` is required. `.freeflow/local.json` is optional and cannot activate Freeflow by itself. Session overrides live in branch-aware Pi session JSONL, do not mutate config files, and cannot bypass missing or invalid repository activation. Setup does not write Freeflow instructions into `AGENTS.md`, `CLAUDE.md`, or host rule files.
|
|
138
194
|
|
|
139
|
-
|
|
195
|
+
## Runtime Delivery
|
|
140
196
|
|
|
141
|
-
|
|
197
|
+
When effective, host adapters deliver:
|
|
142
198
|
|
|
143
|
-
|
|
199
|
+
- `runtime/interaction-contract.md` for compact turn interpretation;
|
|
200
|
+
- one `skills/workflow/SKILL.md` bootstrap while Skills are effective;
|
|
201
|
+
- compact mode and capability state;
|
|
202
|
+
- effective optional capability context.
|
|
144
203
|
|
|
145
|
-
|
|
204
|
+
Mode Contract and other skills remain on demand. Hooks load context only; they do not enforce policy, block tools, grant permissions, or replace repo instructions.
|
|
146
205
|
|
|
147
|
-
|
|
206
|
+
Pi appends effective compact context before agent turns and stores Workflow as one hidden persistent session message. Codex and Claude use packaged lifecycle hooks at supported start, resume, clear, and compact boundaries. Setup reports automatic delivery as confirmed, unavailable, or unconfirmed.
|
|
148
207
|
|
|
149
|
-
##
|
|
208
|
+
## Commands
|
|
150
209
|
|
|
151
|
-
|
|
210
|
+
Natural language is preferred. Pi registers these canonical direct calls:
|
|
152
211
|
|
|
153
212
|
```text
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
Use strict-workflow for this billing change.
|
|
157
|
-
Verify before claiming completion.
|
|
158
|
-
Create a research checkpoint.
|
|
159
|
-
```
|
|
160
|
-
|
|
161
|
-
Slash-style prompts are model-routed in Codex and Claude:
|
|
162
|
-
|
|
163
|
-
```text
|
|
164
|
-
/workflow conversation
|
|
165
|
-
/workflow workflow
|
|
166
|
-
/workflow strict-workflow
|
|
167
|
-
/workflow reset
|
|
168
|
-
/research
|
|
213
|
+
/discuss
|
|
214
|
+
/track-work
|
|
169
215
|
/write-spec
|
|
216
|
+
/review-artifact
|
|
170
217
|
/write-plan
|
|
171
|
-
/execute-
|
|
218
|
+
/execute-work
|
|
219
|
+
/simplify-code
|
|
220
|
+
/migration-work
|
|
221
|
+
/diagnose-failure
|
|
172
222
|
/verify-work
|
|
223
|
+
/review-work
|
|
173
224
|
/commit-work
|
|
174
225
|
/handoff
|
|
226
|
+
/finish-branch
|
|
227
|
+
/release-work
|
|
228
|
+
/launch-work
|
|
229
|
+
/bypass
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
Pi-only compatibility aliases:
|
|
233
|
+
|
|
234
|
+
```text
|
|
235
|
+
/discover
|
|
236
|
+
/execute-plan
|
|
175
237
|
```
|
|
176
238
|
|
|
177
|
-
|
|
239
|
+
Contributor calls:
|
|
178
240
|
|
|
179
|
-
|
|
241
|
+
```text
|
|
242
|
+
/setup-freeflow
|
|
243
|
+
/write-skill
|
|
244
|
+
/evaluate-skill
|
|
245
|
+
```
|
|
180
246
|
|
|
181
|
-
|
|
182
|
-
- [Workflow](plugins/freeflow/docs/workflow.md)
|
|
183
|
-
- [Skills](plugins/freeflow/docs/skills.md)
|
|
184
|
-
- [Architecture](plugins/freeflow/docs/architecture.md)
|
|
185
|
-
- [Release evidence](plugins/freeflow/docs/release-evidence.md)
|
|
186
|
-
- [ADRs](plugins/freeflow/docs/adr/README.md)
|
|
247
|
+
Mode controls:
|
|
187
248
|
|
|
188
|
-
|
|
249
|
+
```text
|
|
250
|
+
/freeflow mode conversation
|
|
251
|
+
/freeflow mode workflow
|
|
252
|
+
/freeflow mode strict-workflow
|
|
253
|
+
/freeflow mode reset
|
|
254
|
+
```
|
|
189
255
|
|
|
190
|
-
|
|
256
|
+
Pi-native settings controls:
|
|
191
257
|
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
| Output router retrieval | - | 7/7 pass | Deterministic router evidence fixes generated-artifact false positives while keeping scanner retrieval default. |
|
|
201
|
-
| Output router command recovery | - | 8/8 pass | `freeflow_run` preserves exact facts and verifies raw vault recovery for routed command output. |
|
|
202
|
-
| Codex Structured Q&A | native proxy 0/1 | improved router 1/1 | Sandbox Permissions Q&A resolves to the source markdown instead of a generated `graphify-out` decoy. |
|
|
203
|
-
| Command surface audit | - | Pass | 4 mode commands, 11 direct skill calls, and 2 developer skill calls are covered while native slash handlers remain disabled. |
|
|
258
|
+
```text
|
|
259
|
+
/freeflow
|
|
260
|
+
/output-router
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
`/freeflow settings` edits personal core overrides. `/freeflow settings session` manages temporary, branch-aware Freeflow, Interaction Contract, Skills, and mode overrides without changing config files. `/freeflow settings repo` edits shared settings. `/freeflow mode` remains the direct temporary mode control. Codex and Claude have no native Freeflow slash handlers; canonical names and natural language remain model-routed cues.
|
|
264
|
+
|
|
265
|
+
Direct skill calls select a method. They do not change mode, authorize mutation, or create independent review context.
|
|
204
266
|
|
|
205
|
-
|
|
267
|
+
## Public Docs
|
|
268
|
+
|
|
269
|
+
- [Docs index](https://github.com/hassan-mohiddin/freeflow/blob/main/plugin-docs/README.md)
|
|
270
|
+
- [Workflow](https://github.com/hassan-mohiddin/freeflow/blob/main/plugin-docs/workflow.md)
|
|
271
|
+
- [Skill routing](https://github.com/hassan-mohiddin/freeflow/blob/main/plugin-docs/skill-routing.md)
|
|
272
|
+
- [Architecture](https://github.com/hassan-mohiddin/freeflow/blob/main/plugin-docs/architecture.md)
|
|
273
|
+
- [Output Router](https://github.com/hassan-mohiddin/freeflow/blob/main/plugin-docs/output-router.md)
|
|
274
|
+
- [Release evidence](https://github.com/hassan-mohiddin/freeflow/blob/main/plugin-docs/release-evidence.md)
|
|
275
|
+
- [Release ADRs](https://github.com/hassan-mohiddin/freeflow/blob/main/plugin-docs/adr/README.md)
|
|
206
276
|
|
|
207
277
|
## What Freeflow Is Not
|
|
208
278
|
|
|
209
279
|
- Not a new agent.
|
|
210
|
-
- Not a
|
|
211
|
-
- Not
|
|
280
|
+
- Not a mandatory phase pipeline.
|
|
281
|
+
- Not a CLI enforcement framework.
|
|
282
|
+
- Not a replacement for repository instructions, tests, policies, or review culture.
|
|
212
283
|
- Not old Orchestra with a smaller README.
|
|
213
|
-
- Not
|
|
214
|
-
|
|
215
|
-
The shipped hooks are context-loading only. They do not enforce policy, block tools, or replace repo instructions.
|
|
216
|
-
|
|
217
|
-
Freeflow is the lightweight workflow layer between point skills and full process systems.
|
|
284
|
+
- Not proof that the current candidate is behaviorally ready.
|
|
218
285
|
|
|
219
286
|
## License
|
|
220
287
|
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
{
|
|
2
|
+
"nativeSlashHandlers": false,
|
|
3
|
+
"modeCommands": [
|
|
4
|
+
{
|
|
5
|
+
"command": "/freeflow mode conversation",
|
|
6
|
+
"routesTo": "mode-contract"
|
|
7
|
+
},
|
|
8
|
+
{
|
|
9
|
+
"command": "/freeflow mode workflow",
|
|
10
|
+
"routesTo": "mode-contract"
|
|
11
|
+
},
|
|
12
|
+
{
|
|
13
|
+
"command": "/freeflow mode strict-workflow",
|
|
14
|
+
"routesTo": "mode-contract"
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
"command": "/freeflow mode reset",
|
|
18
|
+
"routesTo": "mode-contract"
|
|
19
|
+
}
|
|
20
|
+
],
|
|
21
|
+
"directSkillCalls": [
|
|
22
|
+
{
|
|
23
|
+
"command": "/discuss",
|
|
24
|
+
"skill": "discuss"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"command": "/discover",
|
|
28
|
+
"skill": "discuss",
|
|
29
|
+
"aliasFor": "/discuss",
|
|
30
|
+
"piOnly": true
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"command": "/track-work",
|
|
34
|
+
"skill": "track-work"
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"command": "/write-spec",
|
|
38
|
+
"skill": "write-spec"
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
"command": "/review-artifact",
|
|
42
|
+
"skill": "review-artifact"
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"command": "/write-plan",
|
|
46
|
+
"skill": "write-plan"
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"command": "/execute-work",
|
|
50
|
+
"skill": "execute-work"
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"command": "/execute-plan",
|
|
54
|
+
"skill": "execute-work",
|
|
55
|
+
"aliasFor": "/execute-work",
|
|
56
|
+
"piOnly": true
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
"command": "/simplify-code",
|
|
60
|
+
"skill": "simplify-code"
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"command": "/migration-work",
|
|
64
|
+
"skill": "migration-work"
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
"command": "/diagnose-failure",
|
|
68
|
+
"skill": "diagnose-failure"
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
"command": "/verify-work",
|
|
72
|
+
"skill": "verify-work"
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
"command": "/review-work",
|
|
76
|
+
"skill": "review-work"
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
"command": "/commit-work",
|
|
80
|
+
"skill": "commit-work"
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
"command": "/handoff",
|
|
84
|
+
"skill": "handoff"
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
"command": "/finish-branch",
|
|
88
|
+
"skill": "finish-branch"
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
"command": "/release-work",
|
|
92
|
+
"skill": "release-work"
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
"command": "/launch-work",
|
|
96
|
+
"skill": "launch-work"
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
"command": "/bypass",
|
|
100
|
+
"skill": "bypass"
|
|
101
|
+
}
|
|
102
|
+
],
|
|
103
|
+
"piNativeCommands": [
|
|
104
|
+
{
|
|
105
|
+
"command": "/freeflow",
|
|
106
|
+
"handler": "freeflow",
|
|
107
|
+
"kind": "settings"
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
"command": "/output-router",
|
|
111
|
+
"handler": "output-router",
|
|
112
|
+
"kind": "settings"
|
|
113
|
+
}
|
|
114
|
+
],
|
|
115
|
+
"developerSkillCalls": [
|
|
116
|
+
{
|
|
117
|
+
"command": "/setup-freeflow",
|
|
118
|
+
"skill": "setup-freeflow"
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
"command": "/write-skill",
|
|
122
|
+
"skill": "write-skill"
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
"command": "/evaluate-skill",
|
|
126
|
+
"skill": "evaluate-skill"
|
|
127
|
+
}
|
|
128
|
+
]
|
|
129
|
+
}
|