@hassangameryt/freeflow 0.2.0 → 0.3.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 +2 -2
- package/{plugins/freeflow/.claude-plugin → .claude-plugin}/plugin.json +1 -1
- package/{plugins/freeflow/.codex-plugin → .codex-plugin}/plugin.json +1 -1
- package/README.md +19 -14
- package/assets/freeflow-plugin-icon.png +0 -0
- package/{plugins/freeflow/command-surface.json → command-surface.json} +10 -2
- package/evals/README.md +32 -0
- package/evals/fixtures/copy-conventions.md +31 -0
- package/evals/fixtures/output-router/README.md +12 -0
- package/evals/fixtures/output-router/failed-command-output.txt +9 -0
- package/evals/fixtures/output-router/large-router-manual.md +63 -0
- package/evals/fixtures/output-router/native-large-output.txt +40 -0
- package/evals/fixtures/output-router/noisy-test-output.txt +30 -0
- package/evals/fixtures/output-router/verification-output.txt +8 -0
- package/evals/fixtures/tiny-artifact-review-app/README.md +5 -0
- package/evals/fixtures/tiny-artifact-review-app/docs/billing-policy.md +10 -0
- package/evals/fixtures/tiny-artifact-review-app/docs/specs/billing-webhook-api-draft.md +21 -0
- package/evals/fixtures/tiny-artifact-review-app/docs/specs/failed-payment-grace-period.md +24 -0
- package/evals/fixtures/tiny-artifact-review-app/docs/specs/immediate-downgrade.md +17 -0
- package/evals/fixtures/tiny-artifact-review-app/tests/billing.test.md +8 -0
- package/evals/fixtures/tiny-commit-ambiguous-app/.freeflow-eval-setup.sh +15 -0
- package/evals/fixtures/tiny-commit-ambiguous-app/README.md +3 -0
- package/evals/fixtures/tiny-commit-ambiguous-app/src/billing.ts +5 -0
- package/evals/fixtures/tiny-commit-ambiguous-app/src/settings-page.ts +1 -0
- package/evals/fixtures/tiny-commit-ambiguous-app/tests/settings.test.md +5 -0
- package/evals/fixtures/tiny-commit-app/.freeflow-eval-setup.sh +14 -0
- package/evals/fixtures/tiny-commit-app/README.md +3 -0
- package/evals/fixtures/tiny-commit-app/docs/specs/settings-title.md +5 -0
- package/evals/fixtures/tiny-commit-app/src/billing.ts +5 -0
- package/evals/fixtures/tiny-commit-app/src/settings-page.ts +1 -0
- package/evals/fixtures/tiny-commit-app/tests/settings.test.md +5 -0
- package/evals/fixtures/tiny-commit-everything-app/.freeflow-eval-setup.sh +15 -0
- package/evals/fixtures/tiny-commit-everything-app/README.md +3 -0
- package/evals/fixtures/tiny-commit-everything-app/docs/specs/settings-title.md +5 -0
- package/evals/fixtures/tiny-commit-everything-app/src/billing.ts +5 -0
- package/evals/fixtures/tiny-commit-everything-app/src/settings-page.ts +1 -0
- package/evals/fixtures/tiny-commit-everything-app/tests/settings.test.md +5 -0
- package/evals/fixtures/tiny-commit-staged-app/.freeflow-eval-setup.sh +15 -0
- package/evals/fixtures/tiny-commit-staged-app/README.md +3 -0
- package/evals/fixtures/tiny-commit-staged-app/docs/specs/settings-title.md +5 -0
- package/evals/fixtures/tiny-commit-staged-app/src/billing.ts +5 -0
- package/evals/fixtures/tiny-commit-staged-app/src/settings-page.ts +1 -0
- package/evals/fixtures/tiny-commit-staged-app/tests/settings.test.md +5 -0
- package/evals/fixtures/tiny-commit-staged-mixed-app/.freeflow-eval-setup.sh +15 -0
- package/evals/fixtures/tiny-commit-staged-mixed-app/README.md +3 -0
- package/evals/fixtures/tiny-commit-staged-mixed-app/docs/billing-policy.md +3 -0
- package/evals/fixtures/tiny-commit-staged-mixed-app/docs/release-notes.md +3 -0
- package/evals/fixtures/tiny-commit-staged-mixed-app/src/billing.ts +5 -0
- package/evals/fixtures/tiny-dashboard-stale-app/README.md +11 -0
- package/evals/fixtures/tiny-dashboard-stale-app/src/api-client.ts +13 -0
- package/evals/fixtures/tiny-dashboard-stale-app/src/dashboard-data.ts +19 -0
- package/evals/fixtures/tiny-dashboard-stale-app/tests/dashboard-data.test.md +9 -0
- package/evals/fixtures/tiny-decision-destination-app/README.md +6 -0
- package/evals/fixtures/tiny-decision-destination-app/src/risk.ts +8 -0
- package/evals/fixtures/tiny-decision-destination-app/tests/risk.test.md +4 -0
- package/evals/fixtures/tiny-design-depth-app/README.md +15 -0
- package/evals/fixtures/tiny-design-depth-app/src/routes.ts +25 -0
- package/evals/fixtures/tiny-design-depth-app/src/sendEmail.ts +3 -0
- package/evals/fixtures/tiny-design-depth-app/src/sendSms.ts +3 -0
- package/evals/fixtures/tiny-design-depth-app/src/telemetry.ts +3 -0
- package/evals/fixtures/tiny-design-depth-app/tests/routes.test.md +12 -0
- package/evals/fixtures/tiny-eval-method-app/README.md +8 -0
- package/evals/fixtures/tiny-eval-method-app/evals/reports/review-pr-eval-result.md +5 -0
- package/evals/fixtures/tiny-eval-method-app/evals/reports/triage-question-failure.md +17 -0
- package/evals/fixtures/tiny-eval-method-app/evals/runs/review-pr-with-skill-output.diff +11 -0
- package/evals/fixtures/tiny-eval-method-app/evals/runs/review-pr-with-skill-output.md +3 -0
- package/evals/fixtures/tiny-eval-method-app/skills/review-pr/SKILL.md +10 -0
- package/evals/fixtures/tiny-eval-method-app/skills/triage-question/SKILL.md +10 -0
- package/evals/fixtures/tiny-execute-plan-app/README.md +5 -0
- package/evals/fixtures/tiny-execute-plan-app/checks/settings-and-billing-check.sh +5 -0
- package/evals/fixtures/tiny-execute-plan-app/docs/billing-policy.md +10 -0
- package/evals/fixtures/tiny-execute-plan-app/docs/plans/immediate-downgrade-plan.md +11 -0
- package/evals/fixtures/tiny-execute-plan-app/docs/plans/settings-title-plan.md +12 -0
- package/evals/fixtures/tiny-execute-plan-app/docs/plans/settings-title-with-bad-check.md +15 -0
- package/evals/fixtures/tiny-execute-plan-app/docs/plans/unverified-billing-plan.md +9 -0
- package/evals/fixtures/tiny-execute-plan-app/docs/specs/failed-payment-grace-period.md +9 -0
- package/evals/fixtures/tiny-execute-plan-app/docs/specs/settings-title.md +9 -0
- package/evals/fixtures/tiny-execute-plan-app/src/billing.ts +7 -0
- package/evals/fixtures/tiny-execute-plan-app/src/settings-page.ts +1 -0
- package/evals/fixtures/tiny-execute-plan-app/tests/billing.test.md +7 -0
- package/evals/fixtures/tiny-execute-plan-app/tests/settings.test.md +5 -0
- package/evals/fixtures/tiny-execute-review-loop-app/README.md +5 -0
- package/evals/fixtures/tiny-execute-review-loop-app/docs/billing-policy.md +9 -0
- package/evals/fixtures/tiny-execute-review-loop-app/docs/plans/settings-title-plan.md +12 -0
- package/evals/fixtures/tiny-execute-review-loop-app/docs/review/previous-agent-summary.md +15 -0
- package/evals/fixtures/tiny-execute-review-loop-app/docs/review/review-pass-1-non-pass.md +11 -0
- package/evals/fixtures/tiny-execute-review-loop-app/docs/specs/settings-title.md +9 -0
- package/evals/fixtures/tiny-execute-review-loop-app/src/billing.ts +7 -0
- package/evals/fixtures/tiny-execute-review-loop-app/src/settings-page.ts +1 -0
- package/evals/fixtures/tiny-execute-review-loop-app/tests/billing.test.md +7 -0
- package/evals/fixtures/tiny-execute-review-loop-app/tests/settings.test.md +5 -0
- package/evals/fixtures/tiny-flaky-session-app/README.md +10 -0
- package/evals/fixtures/tiny-flaky-session-app/src/session-timeout.ts +13 -0
- package/evals/fixtures/tiny-flaky-session-app/tests/session-timeout.test.md +8 -0
- package/evals/fixtures/tiny-handoff-app/README.md +5 -0
- package/evals/fixtures/tiny-handoff-app/docs/billing-policy.md +10 -0
- package/evals/fixtures/tiny-handoff-app/docs/handoffs/old-agent-handoff.md +8 -0
- package/evals/fixtures/tiny-handoff-app/docs/plans/billing-retry-plan.md +11 -0
- package/evals/fixtures/tiny-handoff-app/src/billing.ts +7 -0
- package/evals/fixtures/tiny-handoff-report-app/README.md +3 -0
- package/evals/fixtures/tiny-handoff-report-app/evals/runs/handoff-3/hof-003/with-skill-output.diff +1 -0
- package/evals/fixtures/tiny-handoff-report-app/evals/runs/handoff-3/hof-003/with-skill-output.md +1 -0
- package/evals/fixtures/tiny-handoff-report-app/evals/scores/hof-003-score.txt +4 -0
- package/evals/fixtures/tiny-plan-app/README.md +5 -0
- package/evals/fixtures/tiny-plan-app/docs/billing-policy.md +10 -0
- package/evals/fixtures/tiny-plan-app/docs/specs/failed-payment-grace-period.md +25 -0
- package/evals/fixtures/tiny-plan-app/src/billing.ts +17 -0
- package/evals/fixtures/tiny-plan-app/src/settings-page.ts +1 -0
- package/evals/fixtures/tiny-plan-app/tests/billing.test.md +8 -0
- package/evals/fixtures/tiny-plan-app/tests/settings.test.md +5 -0
- package/evals/fixtures/tiny-plan-strict-api-app/README.md +3 -0
- package/evals/fixtures/tiny-plan-strict-api-app/docs/billing-policy.md +5 -0
- package/evals/fixtures/tiny-plan-strict-api-app/docs/specs/billing-webhook-api.md +25 -0
- package/evals/fixtures/tiny-plan-strict-api-app/src/billing.ts +5 -0
- package/evals/fixtures/tiny-plan-strict-api-app/src/webhooks.ts +3 -0
- package/evals/fixtures/tiny-plan-strict-api-app/tests/billing-webhook.test.md +8 -0
- package/evals/fixtures/tiny-post-setup-invalid-config-app/.freeflow/config.json +3 -0
- package/evals/fixtures/tiny-post-setup-invalid-config-app/AGENTS.md +15 -0
- package/evals/fixtures/tiny-post-setup-invalid-config-app/README.md +16 -0
- package/evals/fixtures/tiny-post-setup-invalid-config-app/docs/auth-review.md +15 -0
- package/evals/fixtures/tiny-post-setup-invalid-config-app/docs/billing-policy.md +10 -0
- package/evals/fixtures/tiny-post-setup-invalid-config-app/docs/copy-conventions.md +15 -0
- package/evals/fixtures/tiny-post-setup-invalid-config-app/src/auth-middleware.ts +12 -0
- package/evals/fixtures/tiny-post-setup-invalid-config-app/src/billing.ts +20 -0
- package/evals/fixtures/tiny-post-setup-invalid-config-app/src/login-copy.ts +1 -0
- package/evals/fixtures/tiny-post-setup-invalid-config-app/src/settings-page.ts +1 -0
- package/evals/fixtures/tiny-post-setup-invalid-config-app/tests/auth-middleware.test.md +8 -0
- package/evals/fixtures/tiny-post-setup-invalid-config-app/tests/billing.test.md +8 -0
- package/evals/fixtures/tiny-post-setup-invalid-config-app/tests/copy.test.md +7 -0
- package/evals/fixtures/tiny-post-setup-missing-config-app/AGENTS.md +15 -0
- package/evals/fixtures/tiny-post-setup-missing-config-app/README.md +16 -0
- package/evals/fixtures/tiny-post-setup-missing-config-app/docs/auth-review.md +15 -0
- package/evals/fixtures/tiny-post-setup-missing-config-app/docs/billing-policy.md +10 -0
- package/evals/fixtures/tiny-post-setup-missing-config-app/docs/copy-conventions.md +15 -0
- package/evals/fixtures/tiny-post-setup-missing-config-app/src/auth-middleware.ts +12 -0
- package/evals/fixtures/tiny-post-setup-missing-config-app/src/billing.ts +20 -0
- package/evals/fixtures/tiny-post-setup-missing-config-app/src/login-copy.ts +1 -0
- package/evals/fixtures/tiny-post-setup-missing-config-app/src/settings-page.ts +1 -0
- package/evals/fixtures/tiny-post-setup-missing-config-app/tests/auth-middleware.test.md +8 -0
- package/evals/fixtures/tiny-post-setup-missing-config-app/tests/billing.test.md +8 -0
- package/evals/fixtures/tiny-post-setup-missing-config-app/tests/copy.test.md +7 -0
- package/evals/fixtures/tiny-post-setup-source-conflict-app/.freeflow/config.json +3 -0
- package/evals/fixtures/tiny-post-setup-source-conflict-app/AGENTS.md +15 -0
- package/evals/fixtures/tiny-post-setup-source-conflict-app/README.md +16 -0
- package/evals/fixtures/tiny-post-setup-source-conflict-app/docs/auth-review.md +15 -0
- package/evals/fixtures/tiny-post-setup-source-conflict-app/docs/billing-policy.md +10 -0
- package/evals/fixtures/tiny-post-setup-source-conflict-app/docs/copy-conventions.md +15 -0
- package/evals/fixtures/tiny-post-setup-source-conflict-app/src/auth-middleware.ts +12 -0
- package/evals/fixtures/tiny-post-setup-source-conflict-app/src/billing.ts +20 -0
- package/evals/fixtures/tiny-post-setup-source-conflict-app/src/login-copy.ts +1 -0
- package/evals/fixtures/tiny-post-setup-source-conflict-app/src/settings-page.ts +1 -0
- package/evals/fixtures/tiny-post-setup-source-conflict-app/tests/auth-middleware.test.md +8 -0
- package/evals/fixtures/tiny-post-setup-source-conflict-app/tests/billing.test.md +8 -0
- package/evals/fixtures/tiny-post-setup-source-conflict-app/tests/copy.test.md +7 -0
- package/evals/fixtures/tiny-report-performance-app/README.md +11 -0
- package/evals/fixtures/tiny-report-performance-app/docs/performance.md +10 -0
- package/evals/fixtures/tiny-report-performance-app/src/report-summary.ts +29 -0
- package/evals/fixtures/tiny-report-performance-app/tests/report-performance.test.md +8 -0
- package/evals/fixtures/tiny-review-request-app/README.md +3 -0
- package/evals/fixtures/tiny-review-request-app/docs/billing-policy.md +5 -0
- package/evals/fixtures/tiny-review-request-app/docs/plans/billing-webhook-api.md +19 -0
- package/evals/fixtures/tiny-review-request-app/docs/review/previous-agent-summary.md +20 -0
- package/evals/fixtures/tiny-review-request-app/docs/specs/billing-webhook-api.md +25 -0
- package/evals/fixtures/tiny-review-request-app/src/billing.ts +11 -0
- package/evals/fixtures/tiny-review-request-app/src/webhooks.ts +19 -0
- package/evals/fixtures/tiny-review-request-app/tests/billing-webhook.test.md +8 -0
- package/evals/fixtures/tiny-review-work-app/README.md +5 -0
- package/evals/fixtures/tiny-review-work-app/docs/billing-policy.md +9 -0
- package/evals/fixtures/tiny-review-work-app/docs/plans/settings-title-plan.md +12 -0
- package/evals/fixtures/tiny-review-work-app/docs/review/previous-agent-summary.md +15 -0
- package/evals/fixtures/tiny-review-work-app/docs/specs/settings-title.md +9 -0
- package/evals/fixtures/tiny-review-work-app/src/billing.ts +7 -0
- package/evals/fixtures/tiny-review-work-app/src/settings-page.ts +1 -0
- package/evals/fixtures/tiny-review-work-app/tests/billing.test.md +7 -0
- package/evals/fixtures/tiny-review-work-app/tests/settings.test.md +5 -0
- package/evals/fixtures/tiny-saas-app/README.md +16 -0
- package/evals/fixtures/tiny-saas-app/docs/auth-review.md +15 -0
- package/evals/fixtures/tiny-saas-app/docs/billing-policy.md +10 -0
- package/evals/fixtures/tiny-saas-app/docs/copy-conventions.md +15 -0
- package/evals/fixtures/tiny-saas-app/docs/specs/settings-title.md +13 -0
- package/evals/fixtures/tiny-saas-app/src/auth-middleware.ts +12 -0
- package/evals/fixtures/tiny-saas-app/src/billing.ts +20 -0
- package/evals/fixtures/tiny-saas-app/src/login-copy.ts +1 -0
- package/evals/fixtures/tiny-saas-app/src/settings-page.ts +1 -0
- package/evals/fixtures/tiny-saas-app/tests/auth-middleware.test.md +8 -0
- package/evals/fixtures/tiny-saas-app/tests/billing.test.md +8 -0
- package/evals/fixtures/tiny-saas-app/tests/copy.test.md +7 -0
- package/evals/fixtures/tiny-setup-agents-app/AGENTS.md +6 -0
- package/evals/fixtures/tiny-setup-both-app/AGENTS.md +5 -0
- package/evals/fixtures/tiny-setup-both-app/CLAUDE.md +5 -0
- package/evals/fixtures/tiny-setup-claude-app/CLAUDE.md +6 -0
- package/evals/fixtures/tiny-setup-codex-rules-app/.codex/rules/shell.rules +5 -0
- package/evals/fixtures/tiny-setup-codex-rules-app/AGENTS.md +6 -0
- package/evals/fixtures/tiny-setup-conflict-app/AGENTS.md +6 -0
- package/evals/fixtures/tiny-setup-existing-block-app/AGENTS.md +14 -0
- package/evals/fixtures/tiny-setup-four-rules-app/CLAUDE.md +6 -0
- package/evals/fixtures/tiny-skill-dev-app/README.md +10 -0
- package/evals/fixtures/tiny-skill-dev-app/evals/prompts/review-pr-001.txt +8 -0
- package/evals/fixtures/tiny-skill-dev-app/evals/reports/review-pr-failure.md +17 -0
- package/evals/fixtures/tiny-skill-dev-app/skills/review-pr/SKILL.md +13 -0
- package/evals/fixtures/tiny-team-app/README.md +5 -0
- package/evals/fixtures/tiny-team-app/docs/product.md +6 -0
- package/evals/fixtures/tiny-team-app/src/teams.ts +9 -0
- package/evals/fixtures/tiny-team-app/src/users.ts +5 -0
- package/evals/fixtures/tiny-team-app/tests/teams.test.md +7 -0
- package/evals/fixtures/tiny-verify-app/README.md +5 -0
- package/evals/fixtures/tiny-verify-app/src/settings-nav.ts +1 -0
- package/evals/fixtures/tiny-verify-app/src/settings-page.ts +1 -0
- package/evals/fixtures/tiny-verify-app/tests/settings.test.md +7 -0
- package/evals/prompts/aon-001.txt +2 -0
- package/evals/prompts/byp-001.txt +2 -0
- package/evals/prompts/byp-002.txt +2 -0
- package/evals/prompts/cap-001.txt +3 -0
- package/evals/prompts/cap-002.txt +3 -0
- package/evals/prompts/cmd-001.txt +3 -0
- package/evals/prompts/cmd-002.txt +3 -0
- package/evals/prompts/cmd-003.txt +6 -0
- package/evals/prompts/cmd-004.txt +5 -0
- package/evals/prompts/cmd-005.txt +5 -0
- package/evals/prompts/cmd-006.txt +5 -0
- package/evals/prompts/cmd-007.txt +5 -0
- package/evals/prompts/cmd-008.txt +5 -0
- package/evals/prompts/cmd-009.txt +8 -0
- package/evals/prompts/cmd-010.txt +5 -0
- package/evals/prompts/cmd-011.txt +5 -0
- package/evals/prompts/cmd-012.txt +5 -0
- package/evals/prompts/cmd-013.txt +5 -0
- package/evals/prompts/cmd-014.txt +7 -0
- package/evals/prompts/cmd-015.txt +7 -0
- package/evals/prompts/cmd-016.txt +5 -0
- package/evals/prompts/cmt-001.txt +1 -0
- package/evals/prompts/cmt-002.txt +1 -0
- package/evals/prompts/cmt-003.txt +1 -0
- package/evals/prompts/cmt-004.txt +1 -0
- package/evals/prompts/cmt-005.txt +1 -0
- package/evals/prompts/dfd-001.txt +3 -0
- package/evals/prompts/dia-001.txt +3 -0
- package/evals/prompts/dia-002.txt +3 -0
- package/evals/prompts/dia-003.txt +3 -0
- package/evals/prompts/dis-001.txt +5 -0
- package/evals/prompts/dis-002.txt +5 -0
- package/evals/prompts/esk-001.txt +5 -0
- package/evals/prompts/esk-002.txt +5 -0
- package/evals/prompts/esk-003.txt +5 -0
- package/evals/prompts/grc-001.txt +3 -0
- package/evals/prompts/hof-001.txt +3 -0
- package/evals/prompts/hof-002.txt +1 -0
- package/evals/prompts/hof-003.txt +1 -0
- package/evals/prompts/hof-004.txt +1 -0
- package/evals/prompts/hof-005.txt +1 -0
- package/evals/prompts/ivg-001.txt +1 -0
- package/evals/prompts/ivg-002.txt +11 -0
- package/evals/prompts/ivg-003.txt +1 -0
- package/evals/prompts/ivg-004.txt +1 -0
- package/evals/prompts/mode-001.txt +3 -0
- package/evals/prompts/mode-002.txt +1 -0
- package/evals/prompts/mode-003.txt +3 -0
- package/evals/prompts/mode-004.txt +3 -0
- package/evals/prompts/mode-005.txt +3 -0
- package/evals/prompts/mode-006.txt +3 -0
- package/evals/prompts/mode-007.txt +3 -0
- package/evals/prompts/otr-001.txt +3 -0
- package/evals/prompts/otr-002.txt +3 -0
- package/evals/prompts/rar-001.txt +5 -0
- package/evals/prompts/rar-002.txt +3 -0
- package/evals/prompts/rar-003.txt +6 -0
- package/evals/prompts/rar-004.txt +15 -0
- package/evals/prompts/rar-005.txt +10 -0
- package/evals/prompts/rbr-001.txt +3 -0
- package/evals/prompts/rbr-002.txt +3 -0
- package/evals/prompts/rbr-003.txt +7 -0
- package/evals/prompts/rev-001.txt +3 -0
- package/evals/prompts/rev-002.txt +5 -0
- package/evals/prompts/rev-003.txt +6 -0
- package/evals/prompts/rev-004.txt +1 -0
- package/evals/prompts/rev-005.txt +15 -0
- package/evals/prompts/rev-006.txt +5 -0
- package/evals/prompts/stp-001.txt +1 -0
- package/evals/prompts/stp-002.txt +1 -0
- package/evals/prompts/stp-003.txt +1 -0
- package/evals/prompts/stp-004.txt +1 -0
- package/evals/prompts/stp-005.txt +1 -0
- package/evals/prompts/stp-006.txt +1 -0
- package/evals/prompts/stp-007.txt +1 -0
- package/evals/prompts/stp-008.txt +1 -0
- package/evals/prompts/stp-009.txt +1 -0
- package/evals/prompts/stp-010.txt +1 -0
- package/evals/prompts/stp-011.txt +1 -0
- package/evals/prompts/vfy-003.txt +1 -0
- package/evals/prompts/wpl-001.txt +3 -0
- package/evals/prompts/wpl-002.txt +5 -0
- package/evals/prompts/wpl-003.txt +3 -0
- package/evals/prompts/wpl-004.txt +5 -0
- package/evals/prompts/wpl-005.txt +1 -0
- package/evals/prompts/wrc-001.txt +10 -0
- package/evals/prompts/wrc-002.txt +3 -0
- package/evals/prompts/wsk-001.txt +6 -0
- package/evals/prompts/wsp-001.txt +5 -0
- package/evals/prompts/wsp-002.txt +15 -0
- package/evals/prompts/wsp-003.txt +3 -0
- package/evals/prompts/wsp-004.txt +15 -0
- package/evals/prompts/wsp-005.txt +5 -0
- package/evals/prompts/wsp-006.txt +12 -0
- package/evals/prompts/wsp-007.txt +9 -0
- package/evals/prompts/wsp-008.txt +13 -0
- package/evals/prompts/xpl-001.txt +1 -0
- package/evals/prompts/xpl-002.txt +3 -0
- package/evals/prompts/xpl-003.txt +3 -0
- package/evals/prompts/xpl-004.txt +3 -0
- package/evals/prompts/xpl-005.txt +5 -0
- package/evals/prompts/xpl-006.txt +3 -0
- package/evals/registries/adversarial-evals.json +39 -0
- package/evals/registries/fixture-evals.json +2513 -0
- package/evals/registries/handoff-evals.json +74 -0
- package/evals/registries/legacy-evals.json +147 -0
- package/evals/registries/skill-evidence.json +193 -0
- package/evals/registries/verify-work-evals.json +46 -0
- package/evals/reports/acceptance/v0.1-acceptance-report.md +130 -0
- package/evals/reports/by-command-surface/command-surface-1-report.md +45 -0
- package/evals/reports/by-command-surface/command-surface-10-report.md +76 -0
- package/evals/reports/by-command-surface/command-surface-11-report.md +77 -0
- package/evals/reports/by-command-surface/command-surface-12-report.md +91 -0
- package/evals/reports/by-command-surface/command-surface-13-report.md +64 -0
- package/evals/reports/by-command-surface/command-surface-14-report.md +66 -0
- package/evals/reports/by-command-surface/command-surface-15-report.md +124 -0
- package/evals/reports/by-command-surface/command-surface-16-report.md +39 -0
- package/evals/reports/by-command-surface/command-surface-2-report.md +80 -0
- package/evals/reports/by-command-surface/command-surface-3-report.md +86 -0
- package/evals/reports/by-command-surface/command-surface-4-report.md +76 -0
- package/evals/reports/by-command-surface/command-surface-5-report.md +80 -0
- package/evals/reports/by-command-surface/command-surface-6-report.md +74 -0
- package/evals/reports/by-command-surface/command-surface-7-report.md +84 -0
- package/evals/reports/by-command-surface/command-surface-8-report.md +79 -0
- package/evals/reports/by-command-surface/command-surface-9-report.md +79 -0
- package/evals/reports/by-command-surface/command-surface-matrix.md +91 -0
- package/evals/reports/by-skill/bypass-1-report.md +124 -0
- package/evals/reports/by-skill/capture-decisions-1-report.md +99 -0
- package/evals/reports/by-skill/capture-decisions-2-report.md +102 -0
- package/evals/reports/by-skill/commit-work-1-report.md +165 -0
- package/evals/reports/by-skill/commit-work-2-report.md +109 -0
- package/evals/reports/by-skill/design-for-depth-1-report.md +95 -0
- package/evals/reports/by-skill/diagnose-failure-1-report.md +91 -0
- package/evals/reports/by-skill/diagnose-failure-2-report.md +94 -0
- package/evals/reports/by-skill/discover-1-report.md +118 -0
- package/evals/reports/by-skill/evaluate-skill-2-report.md +71 -0
- package/evals/reports/by-skill/execute-plan-1-report.md +103 -0
- package/evals/reports/by-skill/execute-plan-2-report.md +112 -0
- package/evals/reports/by-skill/execute-plan-3-report.md +87 -0
- package/evals/reports/by-skill/grill-context-1-report.md +103 -0
- package/evals/reports/by-skill/handoff-1-report.md +123 -0
- package/evals/reports/by-skill/handoff-2-report.md +105 -0
- package/evals/reports/by-skill/handoff-3-report.md +100 -0
- package/evals/reports/by-skill/handoff-7-report.md +77 -0
- package/evals/reports/by-skill/interview-gate-1-report.md +63 -0
- package/evals/reports/by-skill/interview-gate-2-report.md +105 -0
- package/evals/reports/by-skill/mode-contract-1-report.md +74 -0
- package/evals/reports/by-skill/mode-contract-2-report.md +87 -0
- package/evals/reports/by-skill/mode-contract-3-report.md +65 -0
- package/evals/reports/by-skill/mode-contract-4-report.md +71 -0
- package/evals/reports/by-skill/mode-contract-5-report.md +70 -0
- package/evals/reports/by-skill/output-router-1-report.md +76 -0
- package/evals/reports/by-skill/output-router-2-report.md +65 -0
- package/evals/reports/by-skill/research-1-report.md +144 -0
- package/evals/reports/by-skill/research-brief-1-report.md +94 -0
- package/evals/reports/by-skill/research-brief-2-report.md +75 -0
- package/evals/reports/by-skill/review-artifact-1-report.md +91 -0
- package/evals/reports/by-skill/review-artifact-2-report.md +79 -0
- package/evals/reports/by-skill/review-artifact-3-report.md +120 -0
- package/evals/reports/by-skill/review-artifact-4-report.md +89 -0
- package/evals/reports/by-skill/review-artifact-5-report.md +66 -0
- package/evals/reports/by-skill/review-work-1-report.md +85 -0
- package/evals/reports/by-skill/review-work-2-report.md +87 -0
- package/evals/reports/by-skill/review-work-3-report.md +104 -0
- package/evals/reports/by-skill/review-work-4-report.md +108 -0
- package/evals/reports/by-skill/review-work-5-report.md +73 -0
- package/evals/reports/by-skill/review-work-6-report.md +66 -0
- package/evals/reports/by-skill/setup-freeflow-1-report.md +199 -0
- package/evals/reports/by-skill/setup-freeflow-2-report.md +105 -0
- package/evals/reports/by-skill/setup-freeflow-3-report.md +105 -0
- package/evals/reports/by-skill/setup-freeflow-4-report.md +88 -0
- package/evals/reports/by-skill/setup-freeflow-5-report.md +115 -0
- package/evals/reports/by-skill/skill-authoring-1-report.md +81 -0
- package/evals/reports/by-skill/verify-work-1-report.md +111 -0
- package/evals/reports/by-skill/verify-work-2-report.md +120 -0
- package/evals/reports/by-skill/workflow-1-report.md +65 -0
- package/evals/reports/by-skill/write-plan-1-report.md +123 -0
- package/evals/reports/by-skill/write-plan-2-report.md +98 -0
- package/evals/reports/by-skill/write-plan-3-report.md +110 -0
- package/evals/reports/by-skill/write-spec-1-report.md +88 -0
- package/evals/reports/by-skill/write-spec-2-report.md +89 -0
- package/evals/reports/by-skill/write-spec-3-report.md +90 -0
- package/evals/reports/by-skill/write-spec-4-report.md +167 -0
- package/evals/reports/harness/claude-harness-1-report.md +103 -0
- package/evals/reports/harness/eval-harness-1-report.md +91 -0
- package/evals/reports/iterations/iteration-1-report.md +71 -0
- package/evals/reports/iterations/iteration-2-report.md +78 -0
- package/evals/reports/iterations/iteration-3-report.md +118 -0
- package/evals/reports/iterations/iteration-4-report.md +131 -0
- package/evals/reports/iterations/iteration-5-report.md +149 -0
- package/evals/reports/iterations/iteration-6-report.md +136 -0
- package/evals/reports/runtime/always-on-runtime-1-report.md +107 -0
- package/evals/reports/runtime/context-mode-normalized-benchmark-1-report.md +52 -0
- package/evals/reports/runtime/context-mode-real-deep-baseline-1-report.md +410 -0
- package/evals/reports/runtime/context-mode-real-deep-final-slice-11-report.md +203 -0
- package/evals/reports/runtime/context-mode-real-deep-final-slice-11-review.md +51 -0
- package/evals/reports/runtime/context-saving-native-tools-baseline-1-report.md +99 -0
- package/evals/reports/runtime/eryx-python-compatibility-reprobe-1-report.md +166 -0
- package/evals/reports/runtime/eryx-python-proof-spike-1-report.md +96 -0
- package/evals/reports/runtime/eryx-python-proof-spike-2-report.md +151 -0
- package/evals/reports/runtime/eryx-python-script-derive-execution-1-report.md +233 -0
- package/evals/reports/runtime/jq-script-derive-execution-1-report.md +215 -0
- package/evals/reports/runtime/jq-wasm-proof-spike-1-report.md +67 -0
- package/evals/reports/runtime/output-router-benchmark-1-report.md +81 -0
- package/evals/reports/runtime/output-router-capture-derive-provider-eval-1-report.md +35 -0
- package/evals/reports/runtime/output-router-codex-large-index-sqlite-adhoc-report.md +150 -0
- package/evals/reports/runtime/output-router-codex-qa-benchmark-1-report.md +46 -0
- package/evals/reports/runtime/output-router-command-benchmark-1-report.md +62 -0
- package/evals/reports/runtime/output-router-index-benchmark-1-report.md +64 -0
- package/evals/reports/runtime/output-router-regression-1-report.md +81 -0
- package/evals/reports/runtime/output-router-transform-eval-1-report.md +28 -0
- package/evals/reports/runtime/pi-observed-routing-eval-1-report.md +44 -0
- package/evals/reports/runtime/quickjs-script-derive-execution-1-report.md +159 -0
- package/evals/reports/runtime/quickjs-wasi-proof-spike-1-report.md +55 -0
- package/evals/reports/runtime/render-format-row-protocol-1-report.md +58 -0
- package/evals/reports/runtime/script-sandbox-adapter-selection-review-1-report.md +84 -0
- package/evals/reports/runtime/script-sandbox-probe-resource-hardening-1-report.md +51 -0
- package/evals/reports/runtime/storage-policy-benchmark-1-report.md +176 -0
- package/evals/reports/runtime/vault-index-storage-spike-1-report.md +39 -0
- package/evals/reports/runtime/workflow-context-hook-1-report.md +82 -0
- package/evals/runbooks/adversarial-eval-runbook.md +28 -0
- package/evals/runbooks/fixture-eval-runbook.md +137 -0
- package/evals/runbooks/handoff-eval-runbook.md +22 -0
- package/evals/runbooks/verify-work-eval-runbook.md +27 -0
- package/evals/scripts/audit-command-surface.sh +160 -0
- package/evals/scripts/check-activation-contract.sh +121 -0
- package/evals/scripts/check-runtime-context-hook.sh +183 -0
- package/evals/scripts/grade-fixture-eval.sh +446 -0
- package/evals/scripts/run-claude-fixture-eval.sh +26 -0
- package/evals/scripts/run-codex-fixture-eval.sh +26 -0
- package/evals/scripts/run-eryx-python-proof-spike.js +559 -0
- package/evals/scripts/run-fixture-eval-by-id.sh +23 -0
- package/evals/scripts/run-fixture-eval.sh +464 -0
- package/evals/scripts/run-jq-wasm-proof-spike.js +299 -0
- package/evals/scripts/run-output-router-transform-eval.js +115 -0
- package/evals/scripts/run-pi-observed-routing-eval.js +478 -0
- package/evals/scripts/run-quickjs-wasi-proof-spike.js +339 -0
- package/evals/scripts/skill-evidence.sh +316 -0
- package/evals/scripts/validate-release-metadata.sh +486 -0
- package/evals/suites/v0.1-acceptance-suite.md +131 -0
- package/{plugins/freeflow/hooks → hooks}/freeflow-runtime-context.mjs +46 -12
- package/package.json +39 -19
- package/pi-extension/dist/host-producer-identification.js +186 -0
- package/pi-extension/dist/index.js +85 -0
- package/pi-extension/dist/mcp-config.js +30 -0
- package/pi-extension/dist/native-safety-net.js +209 -0
- package/pi-extension/dist/observed-tool-routing.js +114 -0
- package/pi-extension/dist/renderers.js +835 -0
- package/pi-extension/dist/router-tools.js +438 -0
- package/pi-extension/dist/runtime-context.js +288 -0
- package/pi-extension/dist/schemas.js +254 -0
- package/pi-extension/dist/status.js +449 -0
- package/pi-extension/dist/utils.js +467 -0
- package/pi-extension/src/host-producer-identification.ts +226 -0
- package/pi-extension/src/index.ts +121 -0
- package/pi-extension/src/mcp-config.ts +32 -0
- package/pi-extension/src/native-safety-net.ts +252 -0
- package/pi-extension/src/observed-tool-routing.ts +126 -0
- package/pi-extension/src/renderers.ts +917 -0
- package/pi-extension/src/router-tools.ts +478 -0
- package/pi-extension/src/runtime-context.ts +347 -0
- package/pi-extension/src/schemas.ts +259 -0
- package/pi-extension/src/status.ts +505 -0
- package/pi-extension/src/utils.ts +492 -0
- package/pi-extension/tsconfig.json +16 -0
- package/{plugins/freeflow/docs → plugin-docs}/README.md +3 -3
- package/plugin-docs/adr/0002-evals-before-hooks.md +17 -0
- package/{plugins/freeflow/docs → plugin-docs}/adr/0003-release-boundary.md +2 -2
- package/plugin-docs/adr/0004-discover-replaces-shallow-discovery-skills.md +26 -0
- package/plugin-docs/adr/README.md +10 -0
- package/plugin-docs/architecture.md +89 -0
- package/plugin-docs/output-router.md +396 -0
- package/plugin-docs/release-evidence.md +77 -0
- package/{plugins/freeflow/docs → plugin-docs}/skills.md +3 -2
- package/{plugins/freeflow/docs → plugin-docs}/workflow.md +4 -4
- package/{plugins/freeflow/router/dist → router/dist/benchmarks}/benchmark-harness.js +1 -1
- package/{plugins/freeflow/router/dist → router/dist/benchmarks}/benchmarks.js +14 -14
- package/{plugins/freeflow/router/dist → router/dist/benchmarks}/codex-qa-benchmarks.js +6 -6
- package/{plugins/freeflow/router/dist → router/dist/benchmarks}/command-benchmarks.d.ts +1 -1
- package/{plugins/freeflow/router/dist → router/dist/benchmarks}/command-benchmarks.js +11 -10
- package/router/dist/benchmarks/context-mode-normalized-benchmarks.d.ts +74 -0
- package/router/dist/benchmarks/context-mode-normalized-benchmarks.js +707 -0
- package/router/dist/benchmarks/context-mode-real-deep-benchmark.d.ts +124 -0
- package/router/dist/benchmarks/context-mode-real-deep-benchmark.js +1295 -0
- package/router/dist/benchmarks/context-saving-baseline.d.ts +54 -0
- package/router/dist/benchmarks/context-saving-baseline.js +439 -0
- package/{plugins/freeflow/router/dist → router/dist/benchmarks}/index-benchmarks.d.ts +16 -2
- package/{plugins/freeflow/router/dist → router/dist/benchmarks}/index-benchmarks.js +330 -26
- package/router/dist/benchmarks/storage-policy-benchmarks.d.ts +90 -0
- package/router/dist/benchmarks/storage-policy-benchmarks.js +538 -0
- package/router/dist/benchmarks/vault-index-benchmarks.d.ts +47 -0
- package/router/dist/benchmarks/vault-index-benchmarks.js +257 -0
- package/router/dist/config/config.d.ts +96 -0
- package/router/dist/config/config.js +453 -0
- package/{plugins/freeflow/router/dist → router/dist/config}/schema.js +248 -2
- package/router/dist/config/types.d.ts +521 -0
- package/router/dist/config/types.js +30 -0
- package/{plugins/freeflow/router/dist → router/dist/evidence}/bounded-evidence.d.ts +1 -1
- package/{plugins/freeflow/router/dist → router/dist/evidence}/evidence-range-selector.js +65 -14
- package/{plugins/freeflow/router/dist → router/dist/evidence}/evidence-search.js +18 -2
- package/{plugins/freeflow/router/dist → router/dist/evidence}/evidence.d.ts +1 -1
- package/router/dist/evidence/failure-contracts.d.ts +27 -0
- package/router/dist/evidence/failure-contracts.js +160 -0
- package/router/dist/index.d.ts +30 -0
- package/router/dist/index.js +32 -0
- package/router/dist/processing/engine.d.ts +108 -0
- package/router/dist/processing/engine.js +435 -0
- package/router/dist/processing/reducers.d.ts +266 -0
- package/router/dist/processing/reducers.js +1495 -0
- package/router/dist/processing/renderers.d.ts +25 -0
- package/router/dist/processing/renderers.js +186 -0
- package/router/dist/processing/scripts.d.ts +78 -0
- package/router/dist/processing/scripts.js +333 -0
- package/router/dist/routing/observed-reducers.d.ts +35 -0
- package/router/dist/routing/observed-reducers.js +647 -0
- package/router/dist/routing/observed-routing.d.ts +17 -0
- package/router/dist/routing/observed-routing.js +377 -0
- package/{plugins/freeflow/router/dist → router/dist/routing}/parsers.d.ts +1 -1
- package/{plugins/freeflow/router/dist → router/dist/routing}/parsers.js +1 -1
- package/router/dist/routing/run-filters.d.ts +56 -0
- package/router/dist/routing/run-filters.js +230 -0
- package/router/dist/routing/run-reducers.d.ts +30 -0
- package/router/dist/routing/run-reducers.js +110 -0
- package/router/dist/sandbox/adapter-roots.d.ts +38 -0
- package/router/dist/sandbox/adapter-roots.js +64 -0
- package/router/dist/sandbox/eryx-python-adapter.d.ts +9 -0
- package/router/dist/sandbox/eryx-python-adapter.js +797 -0
- package/router/dist/sandbox/jq-wasm-adapter.d.ts +9 -0
- package/router/dist/sandbox/jq-wasm-adapter.js +421 -0
- package/router/dist/sandbox/quickjs-wasi-adapter.d.ts +9 -0
- package/router/dist/sandbox/quickjs-wasi-adapter.js +381 -0
- package/router/dist/sandbox/script-sandbox.d.ts +113 -0
- package/router/dist/sandbox/script-sandbox.js +303 -0
- package/router/dist/setup/script-transform-adapters.d.ts +28 -0
- package/router/dist/setup/script-transform-adapters.js +259 -0
- package/router/dist/tools/batch.d.ts +22 -0
- package/router/dist/tools/batch.js +509 -0
- package/router/dist/tools/run.d.ts +50 -0
- package/router/dist/tools/run.js +1219 -0
- package/router/dist/tools/search.d.ts +44 -0
- package/{plugins/freeflow/router/dist/retrieve.js → router/dist/tools/search.js} +395 -45
- package/router/dist/transform/engine.d.ts +143 -0
- package/router/dist/transform/engine.js +1955 -0
- package/router/dist/vault/vault-index.d.ts +106 -0
- package/router/dist/vault/vault-index.js +411 -0
- package/{plugins/freeflow/router/dist → router/dist/vault}/vault.d.ts +24 -1
- package/{plugins/freeflow/router/dist → router/dist/vault}/vault.js +152 -1
- package/skills/design-for-depth/SKILL.md +90 -0
- package/skills/design-for-depth/references/design-pressure-signals.md +265 -0
- package/skills/design-for-depth/references/software-design-philosophy.md +219 -0
- package/{plugins/freeflow/skills → skills}/diagnose-failure/SKILL.md +6 -1
- package/{plugins/freeflow/skills/research → skills/discover}/ARTIFACT-DESTINATIONS.md +4 -4
- package/{plugins/freeflow/skills/research → skills/discover}/CHECKPOINTS.md +4 -4
- package/skills/discover/SKILL.md +173 -0
- package/{plugins/freeflow/skills → skills}/execute-plan/SKILL.md +5 -4
- package/{plugins/freeflow/skills → skills}/execute-plan/references/execution-map.md +2 -2
- package/{plugins/freeflow/skills → skills}/mode-contract/SKILL.md +9 -4
- package/skills/output-router/SKILL.md +202 -0
- package/skills/output-router/references/safety-policy.md +40 -0
- package/{plugins/freeflow/skills → skills}/review-artifact/SKILL.md +5 -2
- package/{plugins/freeflow/skills → skills}/review-artifact/references/reviewer-prompt.md +2 -1
- package/{plugins/freeflow/skills → skills}/review-work/SKILL.md +6 -1
- package/{plugins/freeflow/skills → skills}/setup-freeflow/SKILL.md +21 -9
- package/{plugins/freeflow/skills → skills}/setup-freeflow/references/activation-contract.md +11 -10
- package/{plugins/freeflow/skills → skills}/setup-freeflow/references/host-setup.md +3 -3
- package/skills/setup-freeflow/references/output-router-setup.md +102 -0
- package/{plugins/freeflow/skills → skills}/verify-work/SKILL.md +3 -1
- package/{plugins/freeflow/skills → skills}/workflow/SKILL.md +16 -14
- package/{plugins/freeflow/skills → skills}/workflow/references/workflow-map.md +16 -14
- package/{plugins/freeflow/skills → skills}/write-plan/SKILL.md +9 -1
- package/{plugins/freeflow/skills → skills}/write-spec/SKILL.md +9 -6
- package/plugins/freeflow/docs/adr/0002-evals-before-hooks.md +0 -17
- 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/pi-extension/index.js +0 -1176
- package/plugins/freeflow/router/dist/config.d.ts +0 -22
- package/plugins/freeflow/router/dist/config.js +0 -114
- 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/index.d.ts +0 -12
- package/plugins/freeflow/router/dist/index.js +0 -12
- package/plugins/freeflow/router/dist/retrieve.d.ts +0 -33
- package/plugins/freeflow/router/dist/run.d.ts +0 -26
- package/plugins/freeflow/router/dist/run.js +0 -356
- package/plugins/freeflow/router/dist/types.d.ts +0 -234
- package/plugins/freeflow/router/dist/types.js +0 -9
- 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/LANGUAGE.md +0 -61
- package/plugins/freeflow/skills/research/SKILL.md +0 -128
- package/plugins/freeflow/skills/setup-freeflow/references/output-router-setup.md +0 -52
- /package/{plugins/freeflow/assets → assets}/freeflow-plugin-icon-transparent.png +0 -0
- /package/{plugins/freeflow/hooks → hooks}/hooks.json +0 -0
- /package/{plugins/freeflow/docs → plugin-docs}/adr/0001-three-modes.md +0 -0
- /package/{plugins/freeflow/router/dist → router/dist/benchmarks}/benchmark-harness.d.ts +0 -0
- /package/{plugins/freeflow/router/dist → router/dist/benchmarks}/benchmarks.d.ts +0 -0
- /package/{plugins/freeflow/router/dist → router/dist/benchmarks}/codex-qa-benchmarks.d.ts +0 -0
- /package/{plugins/freeflow/router/dist → router/dist/config}/router-contract.d.ts +0 -0
- /package/{plugins/freeflow/router/dist → router/dist/config}/router-contract.js +0 -0
- /package/{plugins/freeflow/router/dist → router/dist/config}/schema.d.ts +0 -0
- /package/{plugins/freeflow/router/dist → router/dist/evidence}/bounded-evidence.js +0 -0
- /package/{plugins/freeflow/router/dist → router/dist/evidence}/evidence-range-selector.d.ts +0 -0
- /package/{plugins/freeflow/router/dist → router/dist/evidence}/evidence-search.d.ts +0 -0
- /package/{plugins/freeflow/router/dist → router/dist/evidence}/evidence.js +0 -0
- /package/{plugins/freeflow/router/dist → router/dist/evidence}/line-ranges.d.ts +0 -0
- /package/{plugins/freeflow/router/dist → router/dist/evidence}/line-ranges.js +0 -0
- /package/{plugins/freeflow/router → router}/dist/experiments/local-index.d.ts +0 -0
- /package/{plugins/freeflow/router → router}/dist/experiments/local-index.js +0 -0
- /package/{plugins/freeflow/router/dist → router/dist/repo}/repo-traversal.d.ts +0 -0
- /package/{plugins/freeflow/router/dist → router/dist/repo}/repo-traversal.js +0 -0
- /package/{plugins/freeflow/skills → skills}/bypass/SKILL.md +0 -0
- /package/{plugins/freeflow/skills → skills}/commit-work/SKILL.md +0 -0
- /package/{plugins/freeflow/skills → skills}/commit-work/references/staging-decisions.md +0 -0
- /package/{plugins/freeflow/skills → skills}/diagnose-failure/references/feedback-loop-catalog.md +0 -0
- /package/{plugins/freeflow/skills → skills}/diagnose-failure/references/flaky-and-performance.md +0 -0
- /package/{plugins/freeflow/skills → skills}/evaluate-skill/SKILL.md +0 -0
- /package/{plugins/freeflow/skills → skills}/evaluate-skill/references/eval-patterns.md +0 -0
- /package/{plugins/freeflow/skills → skills}/evaluate-skill/references/grading-priority.md +0 -0
- /package/{plugins/freeflow/skills → skills}/handoff/SKILL.md +0 -0
- /package/{plugins/freeflow/skills → skills}/handoff/references/templates.md +0 -0
- /package/{plugins/freeflow/skills → skills}/interview-gate/SKILL.md +0 -0
- /package/{plugins/freeflow/skills → skills}/review-work/references/reviewer-prompt.md +0 -0
- /package/{plugins/freeflow/skills → skills}/write-plan/references/plan-shapes.md +0 -0
- /package/{plugins/freeflow/skills → skills}/write-skill/SKILL.md +0 -0
- /package/{plugins/freeflow/skills → skills}/write-spec/references/artifact-standards.md +0 -0
- /package/{plugins/freeflow/skills → skills}/write-spec/references/spec-shapes.md +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: workflow
|
|
3
|
-
description: Use when doing consequential work such as implementation, bug fixing, planning,
|
|
3
|
+
description: Use when doing consequential work such as implementation, bug fixing, planning, discovery-for-action, review, verification, or handoff.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Workflow
|
|
@@ -12,7 +12,7 @@ Move forward when context is sufficient. Re-enter clarification when new ambigui
|
|
|
12
12
|
Question means answer. Do not turn a question into a file edit, report, plan, or implementation.
|
|
13
13
|
|
|
14
14
|
```text
|
|
15
|
-
Clarify /
|
|
15
|
+
Clarify / Discover
|
|
16
16
|
-> Decision / Spec
|
|
17
17
|
-> Plan
|
|
18
18
|
-> Execute
|
|
@@ -23,35 +23,37 @@ Clarify / Research
|
|
|
23
23
|
|
|
24
24
|
This is a guide, not ceremony. Small reversible work can skip spec/plan artifacts.
|
|
25
25
|
|
|
26
|
-
Method skills such as TDD, diagnosis,
|
|
26
|
+
Method skills and lenses such as TDD, diagnosis, execute-plan, or design-for-depth run inside the current workflow phase. Workflow owns routing, source-truth conflicts, user-owned decisions, review, verification, and handoff boundaries.
|
|
27
27
|
|
|
28
28
|
Read `references/workflow-map.md` when the user asks for the full pipeline, public docs need a diagram, or the next workflow entry point is unclear.
|
|
29
29
|
|
|
30
30
|
## Route Closeout
|
|
31
31
|
|
|
32
|
-
|
|
32
|
+
Use `Next:` to name a helpful next route for the user. It is general routing, not only a workflow-phase label.
|
|
33
33
|
|
|
34
|
-
|
|
34
|
+
Do not add `Next:` to every reply. Questions get answers first; add `Next:` only when the answer leaves a concrete next action, choice, stop condition, or route worth naming.
|
|
35
|
+
|
|
36
|
+
For completed consequential work or workflow phases, include `Next:` unless this is a direct question answer, mid-task status, clarification-only turn, or the final line must be a direct owner-decision question.
|
|
35
37
|
|
|
36
38
|
Choose one:
|
|
37
39
|
|
|
38
|
-
- Forward: the next workflow entry point is clear.
|
|
39
|
-
- Backward: new evidence requires clarification,
|
|
40
|
-
- Branch: 2-3 valid next routes exist.
|
|
41
|
-
- Stop: no
|
|
40
|
+
- Forward: the next action or workflow entry point is clear.
|
|
41
|
+
- Backward: new evidence requires clarification, discovery, or interview gate.
|
|
42
|
+
- Branch: 2-3 valid next routes or actions exist.
|
|
43
|
+
- Stop: no useful next action remains.
|
|
42
44
|
|
|
43
45
|
Recommend the route supported by evidence. Do not ask a vague "what next?" question.
|
|
44
46
|
|
|
45
|
-
After completed
|
|
47
|
+
After completed discovery with decisions that must survive beyond chat, route to `write-spec`, an owning decision artifact, or handoff before `write-plan` or execution.
|
|
46
48
|
|
|
47
|
-
`Next:` is routing, not permission to create the next artifact
|
|
49
|
+
`Next:` is routing, not permission to create the next artifact, continue into a new phase, or take the next action.
|
|
48
50
|
|
|
49
51
|
## Backward Edge
|
|
50
52
|
|
|
51
53
|
If new evidence invalidates the current path, re-enter clarification.
|
|
52
54
|
|
|
53
55
|
```text
|
|
54
|
-
Any state -> Clarify /
|
|
56
|
+
Any state -> Clarify / Discover -> explicit next state
|
|
55
57
|
```
|
|
56
58
|
|
|
57
59
|
Do not silently substitute a different path, rewrite the spec, change the plan, or patch forward. State what changed, then decide whether to continue, revise spec, revise plan, diagnose, split scope, defer, or stop and ask.
|
|
@@ -76,7 +78,7 @@ Artifacts are memory, not proof of obedience.
|
|
|
76
78
|
|
|
77
79
|
Only create artifacts when the user asks for an artifact or asks you to do work that requires one.
|
|
78
80
|
|
|
79
|
-
Create them only when they preserve decisions, reduce risk, or help a future agent resume. Prefer short
|
|
81
|
+
Create them only when they preserve decisions, reduce risk, or help a future agent resume. Prefer short discovery notes, decision/spec notes, plans, verification notes, and handoffs.
|
|
80
82
|
|
|
81
83
|
Do not write volatile repo inventories. Link to live files or commands instead.
|
|
82
84
|
|
|
@@ -86,7 +88,7 @@ Review should improve work, not create an endless patch loop.
|
|
|
86
88
|
|
|
87
89
|
Reviewer findings are evidence, not commands. Separate blocking, non-blocking, and question findings before editing from them.
|
|
88
90
|
|
|
89
|
-
A non-passing review routes to adjudication before more implementation. Repeated review failure routes backward to diagnose,
|
|
91
|
+
A non-passing review routes to adjudication before more implementation. Repeated review failure routes backward to diagnose, discover, spec, or plan; do not chase a fourth broad review pass.
|
|
90
92
|
|
|
91
93
|
Review can pass. Save review artifacts only when risk, future memory value, or the user asks for them.
|
|
92
94
|
|
|
@@ -12,7 +12,7 @@ Use this compact version in public README-style docs.
|
|
|
12
12
|
flowchart LR
|
|
13
13
|
Request{request}
|
|
14
14
|
Talk[conversation<br/>answer directly]
|
|
15
|
-
Discover[discover<br/>
|
|
15
|
+
Discover[discover<br/>checkpoint]
|
|
16
16
|
Spec[spec]
|
|
17
17
|
Plan[plan]
|
|
18
18
|
Build[build<br/>execute / diagnose / TDD]
|
|
@@ -26,10 +26,10 @@ flowchart LR
|
|
|
26
26
|
```
|
|
27
27
|
|
|
28
28
|
```text
|
|
29
|
-
Use conversation mode for questions. Use workflow mode for consequential work.
|
|
29
|
+
Use conversation mode for non-mutating questions, critique, read-only exploration, and planning in chat. Use workflow mode for edits, file creation, mutating commands, or other consequential work.
|
|
30
30
|
Use strict-workflow for risky work; same spine, stronger gates.
|
|
31
31
|
Loop back when new evidence, source conflicts, user-owned decisions, or failed checks change the path.
|
|
32
|
-
|
|
32
|
+
Use `Next:` when a response leaves a useful next route. Completed consequential phases should close with forward, backward, branch, or stop unless the reply is only an answer, status update, clarification, or direct owner-decision question.
|
|
33
33
|
```
|
|
34
34
|
|
|
35
35
|
## Reference Map
|
|
@@ -49,7 +49,7 @@ flowchart TD
|
|
|
49
49
|
Workflow --> Entry{Choose entry point}
|
|
50
50
|
Strict --> Entry
|
|
51
51
|
|
|
52
|
-
Entry --> Discovery[Discovery<br/>
|
|
52
|
+
Entry --> Discovery[Discovery<br/>discover<br/>interview-gate]
|
|
53
53
|
Entry --> Spec[Spec<br/>write-spec<br/>review-artifact]
|
|
54
54
|
Entry --> Plan[Plan<br/>write-plan<br/>review-artifact]
|
|
55
55
|
Entry --> Build[Build, diagnose, or TDD<br/>execute-plan<br/>diagnose-failure]
|
|
@@ -75,8 +75,8 @@ flowchart TD
|
|
|
75
75
|
|
|
76
76
|
## Common Entry Points
|
|
77
77
|
|
|
78
|
-
- Use `conversation mode` when the user asks a question, wants critique, or is
|
|
79
|
-
- Use `
|
|
78
|
+
- Use `conversation mode` when the user asks a question, wants critique, or is doing non-mutating exploration or planning in chat. If the user asks to edit, create files, run mutating commands, commit, push, or otherwise change repo/system state, require `workflow` or `strict-workflow` before acting.
|
|
79
|
+
- Use `discover` when repo, domain, evidence, current facts, brainstorming, targeted questions, or a decision checkpoint are needed before spec, plan, build, or durable memory.
|
|
80
80
|
- Use `interview-gate` when direction is vague, source truth conflicts, or user-owned decisions are still open.
|
|
81
81
|
- Use `write-spec` when requirements are agreed but not durable.
|
|
82
82
|
- Use `review-artifact` when a spec, plan, handoff, or decision note must guide future work.
|
|
@@ -88,15 +88,17 @@ flowchart TD
|
|
|
88
88
|
- Use `handoff` when pausing, compacting, or transferring context.
|
|
89
89
|
- Use `bypass` only to skip unnecessary ceremony. It cannot skip user-owned decisions, source-truth conflicts, risky checks, or verification claims.
|
|
90
90
|
|
|
91
|
-
##
|
|
91
|
+
## Route Closeout
|
|
92
92
|
|
|
93
|
-
|
|
93
|
+
Use `Next:` when naming the next route helps the user, not only when a workflow phase changes. Do not force it onto every reply.
|
|
94
94
|
|
|
95
|
-
|
|
96
|
-
- Backward: return to `interview-gate`, `research`, `diagnose-failure`, or plan/spec revision when evidence, failed checks, or repeated review findings change the path.
|
|
97
|
-
- Branch: show 2-3 valid next routes when more than one is reasonable.
|
|
98
|
-
- Stop: say no required next action remains.
|
|
95
|
+
Completed consequential work and phase exits should include `Next:` unless the reply is only a direct answer, mid-task status, clarification-only turn, or direct owner-decision question.
|
|
99
96
|
|
|
100
|
-
|
|
97
|
+
- Forward: name the next action or entry point, such as `write-spec`, `write-plan`, `execute-plan`, `review-work`, `verify-work`, `commit-work`, or `handoff`.
|
|
98
|
+
- Backward: return to `interview-gate`, `discover`, `diagnose-failure`, or plan/spec revision when evidence, failed checks, or repeated review findings change the path.
|
|
99
|
+
- Branch: show 2-3 valid next routes or actions when more than one is reasonable.
|
|
100
|
+
- Stop: say no useful next action remains.
|
|
101
101
|
|
|
102
|
-
|
|
102
|
+
After completed discovery with decisions that must survive beyond chat, prefer `write-spec`, an owning decision artifact, or handoff before planning or execution.
|
|
103
|
+
|
|
104
|
+
Do not create the next artifact or take the next action just because it is the next route.
|
|
@@ -11,7 +11,7 @@ Classify the plan request first:
|
|
|
11
11
|
- Bug without feedback loop: ask for or propose the feedback loop. Do not write or save a fix plan.
|
|
12
12
|
- Hidden owner decision or source conflict: name it and do not write the plan.
|
|
13
13
|
- Context-backed: say a spec is preferred, then write a lightweight plan.
|
|
14
|
-
- Missing source context: ask for context or
|
|
14
|
+
- Missing source context: ask for context or route to `discover`.
|
|
15
15
|
|
|
16
16
|
A plan executes source truth. It does not create it.
|
|
17
17
|
|
|
@@ -47,6 +47,12 @@ If a bug report has no repro or feedback loop, answer in chat. Ask for evidence
|
|
|
47
47
|
|
|
48
48
|
Use vertical slices. Each slice should produce something testable.
|
|
49
49
|
|
|
50
|
+
Slices are execution boundaries, not scope reductions. Do not recast agreed scope as `v1`/`v2`, MVP, release, or roadmap framing unless the spec, user, or source context already chose that framing.
|
|
51
|
+
|
|
52
|
+
When full scope is too large for one safe plan, split it into implementation slices, implementation phases, checklists, or multiple plan artifacts. Ask before changing the user's scope or adopting versioned shipping.
|
|
53
|
+
|
|
54
|
+
When slice boundaries, seams, interfaces, or locality are unclear, use `../design-for-depth/SKILL.md` before writing executable steps. Do not hide unresolved design choices inside implementation detail.
|
|
55
|
+
|
|
50
56
|
## Stop Conditions
|
|
51
57
|
|
|
52
58
|
Stop before writing when the plan would:
|
|
@@ -58,6 +64,7 @@ Stop before writing when the plan would:
|
|
|
58
64
|
- Plan a bug fix without a repro, failing test, feedback loop, or accepted diagnostic risk.
|
|
59
65
|
- Turn a missing bug repro into guessed fix steps, TTLs, invalidation rules, concurrency rules, or instrumentation requirements.
|
|
60
66
|
- Hide uncertainty inside implementation steps.
|
|
67
|
+
- Replace agreed scope with an agent-invented `v1`, MVP, roadmap, or later-version split.
|
|
61
68
|
|
|
62
69
|
Name the missing decision or conflict. Ask which path to follow. Recommend the path supported by evidence.
|
|
63
70
|
|
|
@@ -71,6 +78,7 @@ Adapt the plan to risk. Prefer:
|
|
|
71
78
|
- Goal.
|
|
72
79
|
- Source spec or context.
|
|
73
80
|
- Files likely touched.
|
|
81
|
+
- Dependency or slice order when it affects execution.
|
|
74
82
|
- Vertical slices.
|
|
75
83
|
- Tests or checks per slice.
|
|
76
84
|
- Commands where known.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: write-spec
|
|
3
|
-
description: Use when asked to create or update a durable spec, PRD, requirements document, or decision artifact from agreed requirements,
|
|
3
|
+
description: Use when asked to create or update a durable spec, PRD, requirements document, or decision artifact from agreed requirements, discovery, brainstorming, or source evidence, especially for strict-workflow risk areas that may need owner confirmation before writing.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Write Spec
|
|
@@ -14,7 +14,7 @@ If the user asks a question about a spec, answer the question. Do not create or
|
|
|
14
14
|
Classify every spec request before writing:
|
|
15
15
|
|
|
16
16
|
- Evidence-aligned: write the spec.
|
|
17
|
-
- Missing source context: ask for context or
|
|
17
|
+
- Missing source context: ask for context or route to `discover`.
|
|
18
18
|
- Source-of-truth override: name the conflict and do not write.
|
|
19
19
|
|
|
20
20
|
If the source context, artifact type, or destination is unclear, stop and ask before writing.
|
|
@@ -34,6 +34,7 @@ Stop before writing when the spec would:
|
|
|
34
34
|
- Contradict docs, tests, specs, policies, ADRs, or live code.
|
|
35
35
|
- Treat a handoff, review comment, or plan as authority over source-of-truth files.
|
|
36
36
|
- Hide an owner decision inside polished prose.
|
|
37
|
+
- Reduce or reframe agreed scope as `v1`, MVP, roadmap, or later-version work without source-backed owner approval.
|
|
37
38
|
|
|
38
39
|
In strict-workflow, stop before writing security, billing, privacy, public API, migration, data-loss, or architecture specs when the owner or core decisions are unknown. Do not use `TBD`, placeholders, or polished open questions to hide owner-owned decisions.
|
|
39
40
|
|
|
@@ -54,18 +55,20 @@ Live repo evidence overrides stale notes.
|
|
|
54
55
|
|
|
55
56
|
## Write Path
|
|
56
57
|
|
|
57
|
-
When
|
|
58
|
+
When discovery, brainstorming, or clarification reaches shared understanding, convert that agreed context into a spec. Do not re-interview from scratch.
|
|
58
59
|
|
|
59
|
-
|
|
60
|
+
Preserve the agreed scope. Use scope boundaries, open questions, or follow-up artifacts to manage size; use `v1`/`v2`, MVP, release, or roadmap framing only when it was agreed or source-backed.
|
|
61
|
+
|
|
62
|
+
If remaining ambiguity would not change the next plan, write the spec and mark the ambiguity as open. Preserve tentative architecture assumptions as tentative unless evidence or the owner settles them.
|
|
60
63
|
|
|
61
64
|
Use this shape unless the repo has a stronger convention:
|
|
62
65
|
|
|
63
66
|
- Problem.
|
|
64
67
|
- Intended outcome.
|
|
65
|
-
- Scope / out of scope.
|
|
68
|
+
- Scope / out of scope / ask first / never boundaries when useful.
|
|
66
69
|
- Requirements.
|
|
67
70
|
- Acceptance criteria.
|
|
68
|
-
- Decisions made.
|
|
71
|
+
- Decisions made and open decisions.
|
|
69
72
|
- Constraints / evidence.
|
|
70
73
|
- Open questions.
|
|
71
74
|
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
# ADR 0002: Evals Before Enforcement Hooks
|
|
2
|
-
|
|
3
|
-
## Status
|
|
4
|
-
|
|
5
|
-
Accepted.
|
|
6
|
-
|
|
7
|
-
## Decision
|
|
8
|
-
|
|
9
|
-
Freeflow ships plugin-bundled context-loading runtime: Codex/Claude hooks and a Pi extension that load existing workflow and interview-gate context. It still ships without enforcement hooks or CLI enforcement. Behavior must first be proven with baseline-vs-with-skill evals before mechanical enforcement is added.
|
|
10
|
-
|
|
11
|
-
## Rationale
|
|
12
|
-
|
|
13
|
-
Context-loading runtime addresses a measured lifecycle gap: workflow and interview-gate context may not be present at session start. The setup skill handles the same-session setup case by reading runtime context after successful verification. Enforcement hooks can prevent expensive mistakes, but early enforcement machinery can hide weak skill wording and turn the package into brittle workflow infrastructure.
|
|
14
|
-
|
|
15
|
-
## Consequences
|
|
16
|
-
|
|
17
|
-
Native enforcement remains future work. Enforcement hooks should be added only when a repeated failure is concrete, deterministic, and not solved by concise skill wording.
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
# ADR 0004: Research Replaces Shallow Discovery Skills
|
|
2
|
-
|
|
3
|
-
## Status
|
|
4
|
-
|
|
5
|
-
Accepted.
|
|
6
|
-
|
|
7
|
-
## Decision
|
|
8
|
-
|
|
9
|
-
Freeflow uses one active `research` skill for discovery work before spec, plan, build, or durable memory.
|
|
10
|
-
|
|
11
|
-
The previous active skills `research-brief`, `grill-context`, and `capture-decisions` are deprecated and moved to root `deprecated/skills/`. They are no longer part of the runtime skill surface or direct command surface.
|
|
12
|
-
|
|
13
|
-
The active direct command is `/research`.
|
|
14
|
-
|
|
15
|
-
## Rationale
|
|
16
|
-
|
|
17
|
-
The three older skills were useful independently but shallow as a workflow module. In real use, research, brainstorming, targeted questions, and decision checkpointing need to interleave. Splitting them made the user or agent coordinate the sequence and made long grilling chains or uncaptured research decisions more likely.
|
|
18
|
-
|
|
19
|
-
The `research` skill uses the same module/interface/depth/seam/leverage/locality language as architecture review so discovery can shape deep modules from the beginning, not only rescue shallow code later.
|
|
20
|
-
|
|
21
|
-
## Consequences
|
|
22
|
-
|
|
23
|
-
- `/research-brief`, `/grill-context`, and `/capture-decisions` are removed from the current command surface.
|
|
24
|
-
- Historical evals and reports for the deprecated skills remain as development evidence.
|
|
25
|
-
- Current discovery eval evidence lives in `plugins/freeflow/evals/reports/by-skill/research-1-report.md`.
|
|
26
|
-
- Durable decisions now belong to the checkpoint destination chosen by `research`: spec, plan, handoff, decision note, ADR, domain memory, or chat.
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
# Freeflow ADRs
|
|
2
|
-
|
|
3
|
-
Durable decisions for the public Freeflow package:
|
|
4
|
-
|
|
5
|
-
- [ADR 0001: Three Workflow Modes](0001-three-modes.md)
|
|
6
|
-
- [ADR 0002: Evals Before Enforcement Hooks](0002-evals-before-hooks.md)
|
|
7
|
-
- [ADR 0003: Release Boundary](0003-release-boundary.md)
|
|
8
|
-
- [ADR 0004: Research Replaces Shallow Discovery Skills](0004-research-replaces-shallow-discovery-skills.md)
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
# Architecture
|
|
2
|
-
|
|
3
|
-
Freeflow is a portable skill pack for coding agents.
|
|
4
|
-
|
|
5
|
-
## Runtime Boundary
|
|
6
|
-
|
|
7
|
-
Freeflow ships Markdown skills, bundled references, lightweight context-loading hooks, and a Pi extension. It does not ship a CLI, Codex/Claude native slash handlers, enforcement hooks, or a new agent runtime in this release.
|
|
8
|
-
|
|
9
|
-
Host runtimes still control tools, sandboxing, approvals, and permissions. Freeflow controls workflow pressure:
|
|
10
|
-
|
|
11
|
-
- how much clarification is needed
|
|
12
|
-
- when artifacts are useful
|
|
13
|
-
- when source-truth conflicts stop edits
|
|
14
|
-
- when review and verification are required
|
|
15
|
-
- when a handoff or durable decision is useful
|
|
16
|
-
|
|
17
|
-
## Package Layout
|
|
18
|
-
|
|
19
|
-
```text
|
|
20
|
-
freeflow/
|
|
21
|
-
package.json
|
|
22
|
-
.agents/plugins/marketplace.json
|
|
23
|
-
.claude-plugin/marketplace.json
|
|
24
|
-
README.md
|
|
25
|
-
LICENSE
|
|
26
|
-
CHANGELOG.md
|
|
27
|
-
docs/
|
|
28
|
-
plugins/freeflow/
|
|
29
|
-
.codex-plugin/plugin.json
|
|
30
|
-
.claude-plugin/plugin.json
|
|
31
|
-
command-surface.json
|
|
32
|
-
hooks/
|
|
33
|
-
pi-extension/
|
|
34
|
-
skills/
|
|
35
|
-
docs/
|
|
36
|
-
evals/
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
The repository root is the marketplace and package-facing shell. Codex uses `.agents/plugins/marketplace.json`; Claude uses `.claude-plugin/marketplace.json`. Both point at `plugins/freeflow/`. Pi uses the root `package.json` `pi` manifest to load `plugins/freeflow/skills/` and `plugins/freeflow/pi-extension/index.js`.
|
|
40
|
-
|
|
41
|
-
`plugins/freeflow/` is the single runtime source of truth. Skill edits, bundled references, eval metadata, and command-surface metadata live there to avoid generated package drift.
|
|
42
|
-
|
|
43
|
-
## Progressive Disclosure
|
|
44
|
-
|
|
45
|
-
Each skill keeps its active `SKILL.md` short. Stable details move into `references/` files only when they prevent bloat, reduce repeated work, or address measured failures.
|
|
46
|
-
|
|
47
|
-
This keeps the model's first-loaded instructions focused on behavior:
|
|
48
|
-
|
|
49
|
-
- trigger
|
|
50
|
-
- loop
|
|
51
|
-
- stop condition
|
|
52
|
-
- failure prevention
|
|
53
|
-
|
|
54
|
-
## Host Setup
|
|
55
|
-
|
|
56
|
-
`setup-freeflow` installs a compact always-on contract into the host repo.
|
|
57
|
-
|
|
58
|
-
The canonical setup contract lives in `skills/setup-freeflow/references/activation-contract.md`; setup docs, fixtures, and eval assertions should reference it or be checked against it.
|
|
59
|
-
|
|
60
|
-
Codex setup targets `AGENTS.md` and `.freeflow/config.json`.
|
|
61
|
-
|
|
62
|
-
Claude setup targets `CLAUDE.md`, `.claude/rules/freeflow-core.md`, and `.freeflow/config.json` when Claude is the selected host.
|
|
63
|
-
|
|
64
|
-
Setup should not silently update both hosts or overwrite stronger repo-specific rules. Existing repo instructions are source truth.
|
|
65
|
-
|
|
66
|
-
## Runtime Context Hooks
|
|
67
|
-
|
|
68
|
-
The installed plugin owns `hooks/hooks.json`. Setup does not copy hook files into target repos.
|
|
69
|
-
|
|
70
|
-
The hooks load the existing `workflow` skill, workflow map, and `interview-gate` skill:
|
|
71
|
-
|
|
72
|
-
- at session start, including startup, resume, clear, and compact
|
|
73
|
-
|
|
74
|
-
They also report whether the current repo appears set up, partially set up, or missing setup. They do not run after edit/write tools, block tools, grant permissions, enforce mode policy, or replace repo instructions.
|
|
75
|
-
|
|
76
|
-
Setup handles the same-session case directly: after successful setup verification, it reads the workflow skill, workflow map, and interview-gate skill before its final response and only then says workflow and interview-gate context is loaded.
|
|
77
|
-
|
|
78
|
-
Host runtimes may require plugin hooks to be reviewed and trusted after install. If the host skips untrusted hooks, setup still writes activation/config files, but future session-start runtime context will not load until hooks are trusted and the session is restarted, resumed, cleared, or compacted.
|
|
79
|
-
|
|
80
|
-
Pi uses an extension instead of `hooks/hooks.json`. The Pi extension registers direct commands, reads `workflow/SKILL.md`, `workflow/references/workflow-map.md`, `interview-gate/SKILL.md`, `output-router/SKILL.md`, and `output-router/references/safety-policy.md`, refreshes that context on `session_start` and `session_compact`, and injects it during Pi's `before_agent_start` lifecycle event. The same extension registers `freeflow_retrieve` and `freeflow_run` and gives them compact/expanded TUI renderers so collapsed tool rows stay readable while `ctrl+o` shows structured evidence and recovery details. Pi `/workflow` commands set a session-scoped current-mode override, while `.freeflow/config.json` remains the default-mode source. It follows the same boundary as the Codex/Claude hooks: context loading only, no enforcement.
|
|
81
|
-
|
|
82
|
-
## Deferred Enforcement
|
|
83
|
-
|
|
84
|
-
Enforcement hooks and CLI checks are intentionally deferred. They are useful only after skill wording and evals prove a repeated behavior needs mechanical enforcement.
|
|
85
|
-
|
|
86
|
-
For this release, commands are model-routed language such as `/write-spec` or `/verify-work`; they are not native registered slash handlers.
|
|
@@ -1,212 +0,0 @@
|
|
|
1
|
-
# Output Router
|
|
2
|
-
|
|
3
|
-
Freeflow Output Router keeps agent context focused while preserving exact evidence outside context.
|
|
4
|
-
|
|
5
|
-
Use it when broad repo exploration, generated artifacts, large logs, or noisy command output would otherwise flood the model.
|
|
6
|
-
|
|
7
|
-
For the full architecture, see [`docs/designs/freeflow-output-router-architecture.md`](../../../docs/designs/freeflow-output-router-architecture.md) in the repo root.
|
|
8
|
-
|
|
9
|
-
## Core Idea
|
|
10
|
-
|
|
11
|
-
```text
|
|
12
|
-
smallest sufficient evidence in context
|
|
13
|
-
+ exact raw recovery outside context
|
|
14
|
-
+ no surprise native tool semantics
|
|
15
|
-
```
|
|
16
|
-
|
|
17
|
-
The router ships two explicit tools:
|
|
18
|
-
|
|
19
|
-
- `freeflow_retrieve`: retrieve targeted repo/vault evidence.
|
|
20
|
-
- `freeflow_run`: run likely-large/noisy commands, vault raw output, and return compact evidence.
|
|
21
|
-
|
|
22
|
-
Native tools still matter:
|
|
23
|
-
|
|
24
|
-
- use native `read` for known whole files,
|
|
25
|
-
- use native `bash` for small/direct raw shell behavior,
|
|
26
|
-
- use native `edit`/`write` for mutations.
|
|
27
|
-
|
|
28
|
-
## Tiny Map
|
|
29
|
-
|
|
30
|
-
```mermaid
|
|
31
|
-
flowchart LR
|
|
32
|
-
Agent[agent]
|
|
33
|
-
Retrieve[freeflow_retrieve]
|
|
34
|
-
Run[freeflow_run]
|
|
35
|
-
Repo[repo files]
|
|
36
|
-
Vault[Freeflow vault]
|
|
37
|
-
Native[native read/bash]
|
|
38
|
-
Evidence[bounded evidence]
|
|
39
|
-
Raw[exact recovery]
|
|
40
|
-
|
|
41
|
-
Agent -->|existing info| Retrieve
|
|
42
|
-
Agent -->|noisy command| Run
|
|
43
|
-
Agent -->|direct/raw known output| Native
|
|
44
|
-
Retrieve --> Repo --> Evidence
|
|
45
|
-
Retrieve --> Vault --> Evidence
|
|
46
|
-
Run --> Vault
|
|
47
|
-
Run --> Evidence
|
|
48
|
-
Vault --> Raw
|
|
49
|
-
```
|
|
50
|
-
|
|
51
|
-
## Tool Choice
|
|
52
|
-
|
|
53
|
-
| Need | Use |
|
|
54
|
-
| --- | --- |
|
|
55
|
-
| Find repo evidence before reading files | `freeflow_retrieve action=query` |
|
|
56
|
-
| Get candidate paths first | `freeflow_retrieve action=locate` |
|
|
57
|
-
| Retrieve exact repo/vault lines | `freeflow_retrieve action=retrieve` with `lineRange` |
|
|
58
|
-
| Widen previous evidence | `freeflow_retrieve action=expand` |
|
|
59
|
-
| Explain a previous routed decision/output | `freeflow_retrieve action=explain` |
|
|
60
|
-
| Run noisy/large command output | `freeflow_run` |
|
|
61
|
-
| Read a known whole file | native `read` |
|
|
62
|
-
| Run small exact command | native `bash` |
|
|
63
|
-
|
|
64
|
-
## `freeflow_retrieve`
|
|
65
|
-
|
|
66
|
-
Sources:
|
|
67
|
-
|
|
68
|
-
- `repo`: local repo files.
|
|
69
|
-
- `vault`: previous routed command/native output.
|
|
70
|
-
|
|
71
|
-
Actions:
|
|
72
|
-
|
|
73
|
-
- `query`: returns best evidence packets; default `topK=1`.
|
|
74
|
-
- `locate`: returns candidate locations; default `topK=5`.
|
|
75
|
-
- `retrieve`: returns explicit path/line range evidence.
|
|
76
|
-
- `expand`: expands a previous evidence packet to `lines_30`, `lines_80`, or `full`.
|
|
77
|
-
- `explain`: explains a route decision or vault output.
|
|
78
|
-
|
|
79
|
-
Example:
|
|
80
|
-
|
|
81
|
-
```json
|
|
82
|
-
{
|
|
83
|
-
"action": "query",
|
|
84
|
-
"source": { "kind": "repo" },
|
|
85
|
-
"query": "Sandbox Permissions UseDefault RequireEscalated WithAdditionalPermissions",
|
|
86
|
-
"preserve": "important"
|
|
87
|
-
}
|
|
88
|
-
```
|
|
89
|
-
|
|
90
|
-
Evidence packets include:
|
|
91
|
-
|
|
92
|
-
- source/path,
|
|
93
|
-
- line range,
|
|
94
|
-
- exact excerpt,
|
|
95
|
-
- why the router selected it,
|
|
96
|
-
- expansion/recovery guidance.
|
|
97
|
-
|
|
98
|
-
Repo retrieval uses deterministic scanner ranking by default. Broad scans skip generated/dependency/cache paths such as `graphify-out/**`, but explicit path retrieval remains available.
|
|
99
|
-
|
|
100
|
-
## `freeflow_run`
|
|
101
|
-
|
|
102
|
-
`freeflow_run` executes once through the host-approved runner, stores exact raw output in the vault, then returns useful command evidence.
|
|
103
|
-
|
|
104
|
-
Example:
|
|
105
|
-
|
|
106
|
-
```json
|
|
107
|
-
{
|
|
108
|
-
"command": "npm test",
|
|
109
|
-
"goal": "verification",
|
|
110
|
-
"preserve": "important"
|
|
111
|
-
}
|
|
112
|
-
```
|
|
113
|
-
|
|
114
|
-
Returned results include:
|
|
115
|
-
|
|
116
|
-
- `outputId`,
|
|
117
|
-
- `execution.status` and `exitCode`,
|
|
118
|
-
- parser metadata,
|
|
119
|
-
- important lines,
|
|
120
|
-
- exact recovery instructions.
|
|
121
|
-
|
|
122
|
-
Command parsers currently cover:
|
|
123
|
-
|
|
124
|
-
- test runner output,
|
|
125
|
-
- TypeScript/lint diagnostics,
|
|
126
|
-
- git status/diffstat,
|
|
127
|
-
- build/toolchain errors,
|
|
128
|
-
- generic fallback,
|
|
129
|
-
- duplicate output detection.
|
|
130
|
-
|
|
131
|
-
## Vault Recovery
|
|
132
|
-
|
|
133
|
-
Recover exact command output with:
|
|
134
|
-
|
|
135
|
-
```json
|
|
136
|
-
{
|
|
137
|
-
"action": "retrieve",
|
|
138
|
-
"source": { "kind": "vault", "outputId": "ffout_...", "stream": "combined" },
|
|
139
|
-
"lineRange": { "start": 1, "end": 40 },
|
|
140
|
-
"preserve": "full"
|
|
141
|
-
}
|
|
142
|
-
```
|
|
143
|
-
|
|
144
|
-
Streams:
|
|
145
|
-
|
|
146
|
-
- command output: `stdout`, `stderr`, `combined`,
|
|
147
|
-
- native safety-net output: `raw`.
|
|
148
|
-
|
|
149
|
-
Default vault root:
|
|
150
|
-
|
|
151
|
-
```text
|
|
152
|
-
~/.cache/freeflow-router/vault
|
|
153
|
-
```
|
|
154
|
-
|
|
155
|
-
## Config
|
|
156
|
-
|
|
157
|
-
The router works with built-in defaults. Minimal `/setup-freeflow` writes only `defaultMode`.
|
|
158
|
-
|
|
159
|
-
Optional repo config lives in `.freeflow/config.json` only when explicitly requested:
|
|
160
|
-
|
|
161
|
-
```json
|
|
162
|
-
{
|
|
163
|
-
"defaultMode": "workflow",
|
|
164
|
-
"outputRouter": {
|
|
165
|
-
"postToolRouting": "off",
|
|
166
|
-
"largeOutputBytes": 64000,
|
|
167
|
-
"largeOutputLines": 1000,
|
|
168
|
-
"vaultRoot": "~/.cache/freeflow-router/vault",
|
|
169
|
-
"vaultRetentionDays": 7,
|
|
170
|
-
"generatedPaths": ["graphify-out/**"],
|
|
171
|
-
"noisyCommandHints": ["npm test"]
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
```
|
|
175
|
-
|
|
176
|
-
Rules:
|
|
177
|
-
|
|
178
|
-
- `postToolRouting` defaults to `off`.
|
|
179
|
-
- `safety-net` is opt-in.
|
|
180
|
-
- `strict` is reserved.
|
|
181
|
-
- Do not dump defaults into config.
|
|
182
|
-
- Write only requested keys.
|
|
183
|
-
|
|
184
|
-
## Native Safety Net
|
|
185
|
-
|
|
186
|
-
Pi can optionally route large native `read`/`bash` results after the tool runs.
|
|
187
|
-
|
|
188
|
-
Default: off.
|
|
189
|
-
|
|
190
|
-
When enabled, a routed native result is labeled, vaulted, and includes an `outputId`. If safety-net routing fails, Freeflow fails open and returns native output with a warning.
|
|
191
|
-
|
|
192
|
-
## Defaults And Experiments
|
|
193
|
-
|
|
194
|
-
Current adoption decisions:
|
|
195
|
-
|
|
196
|
-
- Scanner retrieval is the default backend.
|
|
197
|
-
- The no-dependency local index is experimental and not adopted by default.
|
|
198
|
-
- SQLite/FTS is not adopted.
|
|
199
|
-
- Model-assisted routing is not default.
|
|
200
|
-
- Graphify, Claude Context, RTK, and Squeez are optional references/comparators, not dependencies.
|
|
201
|
-
|
|
202
|
-
## Evidence
|
|
203
|
-
|
|
204
|
-
Current release evidence:
|
|
205
|
-
|
|
206
|
-
- Retrieval benchmark: improved router passed 7/7 fixtures.
|
|
207
|
-
- Command benchmark: `freeflow_run` passed 8/8 fixtures with exact recovery.
|
|
208
|
-
- Optional index benchmark: scanner remains default; index not adopted.
|
|
209
|
-
- Codex Structured Q&A benchmark: improved router passed the Sandbox Permissions fixture where native broad search selected `graphify-out/graph.html`.
|
|
210
|
-
- Setup eval: optional `outputRouter` config is opt-in; minimal setup remains only `defaultMode`.
|
|
211
|
-
|
|
212
|
-
See `release-evidence.md` and runtime reports under `plugins/freeflow/evals/reports/runtime/`.
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
# Release Evidence
|
|
2
|
-
|
|
3
|
-
Freeflow v0.2.0 is based on the v0.1 local acceptance suite plus targeted runtime, setup, and output-router evidence from the development repository.
|
|
4
|
-
|
|
5
|
-
## Acceptance Summary
|
|
6
|
-
|
|
7
|
-
The local v0.1 acceptance suite passed after measured fixes and was rerun during prepublish verification on 2026-05-26.
|
|
8
|
-
|
|
9
|
-
High-signal behaviors covered:
|
|
10
|
-
|
|
11
|
-
- Source-truth conflicts stop before edits.
|
|
12
|
-
- Strict public API specs ask for owner decisions.
|
|
13
|
-
- Execution stops when verification reveals a bad plan.
|
|
14
|
-
- Commit flow refuses mixed staged sensitive changes.
|
|
15
|
-
- Research checkpoints replace separate research, grilling, and decision-capture commands for discovery work.
|
|
16
|
-
- Bypass skips ceremony, not judgment.
|
|
17
|
-
|
|
18
|
-
## Command Surface
|
|
19
|
-
|
|
20
|
-
The development registry covers:
|
|
21
|
-
|
|
22
|
-
- 4 mode commands.
|
|
23
|
-
- 11 direct workflow skill calls.
|
|
24
|
-
- 2 contributor skill calls.
|
|
25
|
-
|
|
26
|
-
Codex/Claude native slash handlers are not shipped in this release. In those hosts, commands are model-routed through natural language and skill activation. Pi registers direct Freeflow commands through its extension.
|
|
27
|
-
|
|
28
|
-
## Runtime Context
|
|
29
|
-
|
|
30
|
-
Freeflow ships plugin-bundled context hooks that load the existing `workflow` skill, workflow map, and `interview-gate` skill at session start. The Pi extension also loads output-router context, including its safety-policy reference, when the routed tools are available. These hooks do not run after edit/write tools, enforce behavior, block tools, or create repo-local hook files.
|
|
31
|
-
|
|
32
|
-
For the same session that runs setup, `setup-freeflow` reads the workflow skill, workflow map, and interview-gate skill after successful setup verification before saying workflow and interview-gate context is loaded.
|
|
33
|
-
|
|
34
|
-
Host trust prompts for plugin hooks are expected host behavior. Local metadata validation checks hook packaging and deterministic output, not end-to-end host trust UI.
|
|
35
|
-
|
|
36
|
-
## Output Router Evidence
|
|
37
|
-
|
|
38
|
-
Output-router behavior is backed by deterministic runtime reports under `plugins/freeflow/evals/reports/runtime/`.
|
|
39
|
-
|
|
40
|
-
Verified in the development repo:
|
|
41
|
-
|
|
42
|
-
- Retrieval benchmark: improved router passed 7/7 gated fixtures and fixed the generated-artifact Sandbox Permissions false-positive shape.
|
|
43
|
-
- Command-output benchmark: `freeflow_run` passed 8/8 fixtures, preserved exact facts, and verified raw vault recovery.
|
|
44
|
-
- Optional local index benchmark: scanner remains default, index is not adopted by default, and the no-dependency index remains experimental.
|
|
45
|
-
- Codex Structured Q&A macro benchmark: improved router passed the first Sandbox Permissions Q&A fixture while the native broad-search proxy selected `graphify-out/graph.html`.
|
|
46
|
-
- Large Codex scanner benchmark: scanner remains the retrieval backend; latest recorded report-refresh evidence kept scanner at 6/8 strict fixtures with bounded context.
|
|
47
|
-
- Setup/config eval: `setup-freeflow` supports optional `outputRouter` repo config only when explicitly requested; minimal setup still writes only `defaultMode`.
|
|
48
|
-
|
|
49
|
-
Adoption decisions:
|
|
50
|
-
|
|
51
|
-
- Scanner improvements ship as default behavior.
|
|
52
|
-
- Native post-tool safety-net routing remains off unless explicitly configured.
|
|
53
|
-
- The no-dependency local index stays experimental.
|
|
54
|
-
- SQLite/FTS, model-assisted routing, Graphify, and Claude Context remain optional/non-default comparison paths, not product dependencies.
|
|
55
|
-
|
|
56
|
-
## Release Metadata
|
|
57
|
-
|
|
58
|
-
Run `plugins/freeflow/evals/scripts/validate-release-metadata.sh` for local prepublish checks across marketplace metadata, host manifests, command-surface routing, release-boundary docs, package cleanliness, and deferred install-smoke status.
|
|
59
|
-
|
|
60
|
-
Run `plugins/freeflow/evals/scripts/check-runtime-context-hook.sh` after changing lifecycle context hooks.
|
|
61
|
-
|
|
62
|
-
## Known Deferred Work
|
|
63
|
-
|
|
64
|
-
- Live Claude smoke evals after Hassan confirms Claude testing is available again.
|
|
65
|
-
- GitHub-install smoke tests in separate Codex, Claude, and fresh Pi environments.
|
|
66
|
-
- Enforcement hooks or CLI checks only after repeated behavior failures justify them.
|
|
67
|
-
- Public marketplace submission only after GitHub install works for required hosts.
|
|
68
|
-
|
|
69
|
-
Full eval reports are development evidence and are not included in the runtime package.
|