feed-the-machine 1.6.0 → 1.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -21
- package/README.md +170 -170
- package/bin/brain.py +1340 -0
- package/bin/convert_claude_skills_to_codex.py +490 -0
- package/bin/generate-manifest.mjs +463 -463
- package/bin/harden_codex_skills.py +141 -0
- package/bin/install.mjs +491 -491
- package/bin/migrate-eng-buddy-data.py +875 -0
- package/bin/playbook_engine/__init__.py +1 -0
- package/bin/playbook_engine/conftest.py +8 -0
- package/bin/playbook_engine/extractor.py +33 -0
- package/bin/playbook_engine/manager.py +102 -0
- package/bin/playbook_engine/models.py +84 -0
- package/bin/playbook_engine/registry.py +35 -0
- package/bin/playbook_engine/test_extractor.py +72 -0
- package/bin/playbook_engine/test_integration.py +129 -0
- package/bin/playbook_engine/test_manager.py +85 -0
- package/bin/playbook_engine/test_models.py +166 -0
- package/bin/playbook_engine/test_registry.py +67 -0
- package/bin/playbook_engine/test_tracer.py +86 -0
- package/bin/playbook_engine/tracer.py +93 -0
- package/bin/tasks_db.py +456 -0
- package/docs/HOOKS.md +243 -243
- package/docs/INBOX.md +233 -233
- package/ftm/SKILL.md +125 -122
- package/ftm-audit/SKILL.md +623 -623
- package/ftm-audit/references/protocols/PROJECT-PATTERNS.md +91 -91
- package/ftm-audit/references/protocols/RUNTIME-WIRING.md +66 -66
- package/ftm-audit/references/protocols/WIRING-CONTRACTS.md +135 -135
- package/ftm-audit/references/strategies/AUTO-FIX-STRATEGIES.md +69 -69
- package/ftm-audit/references/templates/REPORT-FORMAT.md +96 -96
- package/ftm-audit/scripts/run-knip.sh +23 -23
- package/ftm-audit.yml +2 -2
- package/ftm-brainstorm/SKILL.md +1003 -498
- package/ftm-brainstorm/evals/evals.json +180 -100
- package/ftm-brainstorm/evals/promptfoo.yaml +109 -109
- package/ftm-brainstorm/references/agent-prompts.md +552 -224
- package/ftm-brainstorm/references/plan-template.md +209 -121
- package/ftm-brainstorm.yml +2 -2
- package/ftm-browse/SKILL.md +454 -454
- package/ftm-browse/daemon/browser-manager.ts +206 -206
- package/ftm-browse/daemon/bun.lock +30 -30
- package/ftm-browse/daemon/cli.ts +347 -347
- package/ftm-browse/daemon/commands.ts +410 -410
- package/ftm-browse/daemon/main.ts +357 -357
- package/ftm-browse/daemon/package.json +17 -17
- package/ftm-browse/daemon/server.ts +189 -189
- package/ftm-browse/daemon/snapshot.ts +519 -519
- package/ftm-browse/daemon/tsconfig.json +22 -22
- package/ftm-browse.yml +4 -4
- package/ftm-capture/SKILL.md +370 -370
- package/ftm-capture.yml +4 -4
- package/ftm-codex-gate/SKILL.md +361 -361
- package/ftm-codex-gate.yml +2 -2
- package/ftm-config/SKILL.md +422 -345
- package/ftm-config.default.yml +125 -82
- package/ftm-config.yml +44 -2
- package/ftm-council/SKILL.md +416 -416
- package/ftm-council/references/prompts/CLAUDE-INVESTIGATION.md +60 -60
- package/ftm-council/references/prompts/CODEX-INVESTIGATION.md +58 -58
- package/ftm-council/references/prompts/GEMINI-INVESTIGATION.md +58 -58
- package/ftm-council/references/prompts/REBUTTAL-TEMPLATE.md +57 -57
- package/ftm-council/references/protocols/PREREQUISITES.md +47 -47
- package/ftm-council/references/protocols/STEP-0-FRAMING.md +46 -46
- package/ftm-council.yml +2 -2
- package/ftm-dashboard/SKILL.md +163 -163
- package/ftm-dashboard.yml +4 -4
- package/ftm-debug/SKILL.md +1037 -1037
- package/ftm-debug/references/phases/PHASE-0-INTAKE.md +58 -58
- package/ftm-debug/references/phases/PHASE-1-TRIAGE.md +46 -46
- package/ftm-debug/references/phases/PHASE-2-WAR-ROOM-AGENTS.md +279 -279
- package/ftm-debug/references/phases/PHASE-3-TO-6-EXECUTION.md +436 -436
- package/ftm-debug/references/protocols/BLACKBOARD.md +86 -86
- package/ftm-debug/references/protocols/EDGE-CASES.md +103 -103
- package/ftm-debug.yml +2 -2
- package/ftm-diagram/SKILL.md +277 -277
- package/ftm-diagram.yml +2 -2
- package/ftm-executor/SKILL.md +777 -777
- package/ftm-executor/references/STYLE-TEMPLATE.md +73 -73
- package/ftm-executor/references/phases/PHASE-0-VERIFICATION.md +62 -62
- package/ftm-executor/references/phases/PHASE-2-AGENT-ASSEMBLY.md +34 -34
- package/ftm-executor/references/phases/PHASE-3-WORKTREES.md +38 -38
- package/ftm-executor/references/phases/PHASE-4-5-AUDIT.md +72 -72
- package/ftm-executor/references/phases/PHASE-4-DISPATCH.md +66 -66
- package/ftm-executor/references/phases/PHASE-5-5-CODEX-GATE.md +73 -73
- package/ftm-executor/references/protocols/DOCUMENTATION-BOOTSTRAP.md +36 -36
- package/ftm-executor/references/protocols/MODEL-PROFILE.md +59 -59
- package/ftm-executor/references/protocols/PROGRESS-TRACKING.md +66 -66
- package/ftm-executor/runtime/ftm-runtime.mjs +252 -252
- package/ftm-executor/runtime/package.json +8 -8
- package/ftm-executor.yml +2 -2
- package/ftm-git/SKILL.md +441 -441
- package/ftm-git/evals/evals.json +26 -26
- package/ftm-git/evals/promptfoo.yaml +75 -75
- package/ftm-git/hooks/post-commit-experience.sh +92 -92
- package/ftm-git/references/patterns/SECRET-PATTERNS.md +104 -104
- package/ftm-git/references/protocols/REMEDIATION.md +139 -139
- package/ftm-git/scripts/pre-commit-secrets.sh +110 -110
- package/ftm-git.yml +2 -2
- package/ftm-inbox/backend/__pycache__/main.cpython-314.pyc +0 -0
- package/ftm-inbox/backend/adapters/_retry.py +64 -64
- package/ftm-inbox/backend/adapters/base.py +230 -230
- package/ftm-inbox/backend/adapters/freshservice.py +104 -104
- package/ftm-inbox/backend/adapters/gmail.py +125 -125
- package/ftm-inbox/backend/adapters/jira.py +136 -136
- package/ftm-inbox/backend/adapters/registry.py +192 -192
- package/ftm-inbox/backend/adapters/slack.py +110 -110
- package/ftm-inbox/backend/db/connection.py +54 -54
- package/ftm-inbox/backend/db/schema.py +78 -78
- package/ftm-inbox/backend/executor/__init__.py +7 -7
- package/ftm-inbox/backend/executor/engine.py +149 -149
- package/ftm-inbox/backend/executor/step_runner.py +98 -98
- package/ftm-inbox/backend/main.py +103 -103
- package/ftm-inbox/backend/models/__init__.py +1 -1
- package/ftm-inbox/backend/models/unified_task.py +36 -36
- package/ftm-inbox/backend/planner/__init__.py +6 -6
- package/ftm-inbox/backend/planner/__pycache__/__init__.cpython-314.pyc +0 -0
- package/ftm-inbox/backend/planner/__pycache__/generator.cpython-314.pyc +0 -0
- package/ftm-inbox/backend/planner/__pycache__/schema.cpython-314.pyc +0 -0
- package/ftm-inbox/backend/planner/generator.py +127 -127
- package/ftm-inbox/backend/planner/schema.py +34 -34
- package/ftm-inbox/backend/requirements.txt +5 -5
- package/ftm-inbox/backend/routes/__pycache__/plan.cpython-314.pyc +0 -0
- package/ftm-inbox/backend/routes/execute.py +186 -186
- package/ftm-inbox/backend/routes/health.py +52 -52
- package/ftm-inbox/backend/routes/inbox.py +68 -68
- package/ftm-inbox/backend/routes/plan.py +271 -271
- package/ftm-inbox/bin/launchagent.mjs +91 -91
- package/ftm-inbox/bin/setup.mjs +188 -188
- package/ftm-inbox/bin/start.sh +10 -10
- package/ftm-inbox/bin/status.sh +17 -17
- package/ftm-inbox/bin/stop.sh +8 -8
- package/ftm-inbox/config.example.yml +55 -55
- package/ftm-inbox/package-lock.json +2898 -2898
- package/ftm-inbox/package.json +26 -26
- package/ftm-inbox/postcss.config.js +6 -6
- package/ftm-inbox/src/app.css +199 -199
- package/ftm-inbox/src/app.html +18 -18
- package/ftm-inbox/src/lib/api.ts +166 -166
- package/ftm-inbox/src/lib/components/ExecutionLog.svelte +81 -81
- package/ftm-inbox/src/lib/components/InboxFeed.svelte +143 -143
- package/ftm-inbox/src/lib/components/PlanStep.svelte +271 -271
- package/ftm-inbox/src/lib/components/PlanView.svelte +206 -206
- package/ftm-inbox/src/lib/components/StreamPanel.svelte +99 -99
- package/ftm-inbox/src/lib/components/TaskCard.svelte +190 -190
- package/ftm-inbox/src/lib/components/ui/EmptyState.svelte +63 -63
- package/ftm-inbox/src/lib/components/ui/KawaiiCard.svelte +86 -86
- package/ftm-inbox/src/lib/components/ui/PillButton.svelte +106 -106
- package/ftm-inbox/src/lib/components/ui/StatusBadge.svelte +67 -67
- package/ftm-inbox/src/lib/components/ui/StreamDrawer.svelte +149 -149
- package/ftm-inbox/src/lib/components/ui/ThemeToggle.svelte +80 -80
- package/ftm-inbox/src/lib/theme.ts +47 -47
- package/ftm-inbox/src/routes/+layout.svelte +76 -76
- package/ftm-inbox/src/routes/+page.svelte +401 -401
- package/ftm-inbox/svelte.config.js +12 -12
- package/ftm-inbox/tailwind.config.ts +63 -63
- package/ftm-inbox/tsconfig.json +13 -13
- package/ftm-inbox/vite.config.ts +6 -6
- package/ftm-intent/SKILL.md +241 -241
- package/ftm-intent.yml +2 -2
- package/ftm-manifest.json +3794 -3794
- package/ftm-map/SKILL.md +291 -291
- package/ftm-map/scripts/db.py +712 -712
- package/ftm-map/scripts/index.py +415 -415
- package/ftm-map/scripts/parser.py +224 -224
- package/ftm-map/scripts/queries/go-tags.scm +20 -20
- package/ftm-map/scripts/queries/javascript-tags.scm +35 -35
- package/ftm-map/scripts/queries/python-tags.scm +31 -31
- package/ftm-map/scripts/queries/ruby-tags.scm +19 -19
- package/ftm-map/scripts/queries/rust-tags.scm +37 -37
- package/ftm-map/scripts/queries/typescript-tags.scm +41 -41
- package/ftm-map/scripts/query.py +301 -301
- package/ftm-map/scripts/ranker.py +377 -377
- package/ftm-map/scripts/requirements.txt +5 -5
- package/ftm-map/scripts/setup-hooks.sh +27 -27
- package/ftm-map/scripts/setup.sh +56 -56
- package/ftm-map/scripts/test_db.py +364 -364
- package/ftm-map/scripts/test_parser.py +174 -174
- package/ftm-map/scripts/test_query.py +183 -183
- package/ftm-map/scripts/test_ranker.py +199 -199
- package/ftm-map/scripts/views.py +591 -591
- package/ftm-map.yml +2 -2
- package/ftm-mind/SKILL.md +201 -1943
- package/ftm-mind/evals/promptfoo.yaml +142 -142
- package/ftm-mind/references/blackboard-protocol.md +110 -0
- package/ftm-mind/references/blackboard-schema.md +328 -328
- package/ftm-mind/references/complexity-guide.md +110 -110
- package/ftm-mind/references/complexity-sizing.md +138 -0
- package/ftm-mind/references/decide-act-protocol.md +172 -0
- package/ftm-mind/references/direct-execution.md +51 -0
- package/ftm-mind/references/environment-discovery.md +77 -0
- package/ftm-mind/references/event-registry.md +319 -319
- package/ftm-mind/references/mcp-inventory.md +300 -296
- package/ftm-mind/references/ops-routing.md +47 -0
- package/ftm-mind/references/orient-protocol.md +234 -0
- package/ftm-mind/references/personality.md +40 -0
- package/ftm-mind/references/protocols/COMPLEXITY-SIZING.md +72 -72
- package/ftm-mind/references/protocols/MCP-HEURISTICS.md +32 -32
- package/ftm-mind/references/protocols/PLAN-APPROVAL.md +80 -80
- package/ftm-mind/references/reflexion-protocol.md +249 -249
- package/ftm-mind/references/routing/SCENARIOS.md +22 -22
- package/ftm-mind/references/routing-scenarios.md +35 -35
- package/ftm-mind.yml +2 -2
- package/ftm-ops.yml +4 -0
- package/ftm-pause/SKILL.md +395 -395
- package/ftm-pause/references/protocols/SKILL-RESTORE-PROTOCOLS.md +186 -186
- package/ftm-pause/references/protocols/VALIDATION.md +80 -80
- package/ftm-pause.yml +2 -2
- package/ftm-researcher/SKILL.md +275 -275
- package/ftm-researcher/evals/agent-diversity.yaml +17 -17
- package/ftm-researcher/evals/synthesis-quality.yaml +12 -12
- package/ftm-researcher/evals/trigger-accuracy.yaml +39 -39
- package/ftm-researcher/references/adaptive-search.md +116 -116
- package/ftm-researcher/references/agent-prompts.md +193 -193
- package/ftm-researcher/references/council-integration.md +193 -193
- package/ftm-researcher/references/output-format.md +203 -203
- package/ftm-researcher/references/synthesis-pipeline.md +165 -165
- package/ftm-researcher/scripts/score_credibility.py +234 -234
- package/ftm-researcher/scripts/validate_research.py +92 -92
- package/ftm-researcher.yml +2 -2
- package/ftm-resume/SKILL.md +518 -518
- package/ftm-resume/references/protocols/VALIDATION.md +172 -172
- package/ftm-resume.yml +2 -2
- package/ftm-retro/SKILL.md +380 -380
- package/ftm-retro/references/protocols/SCORING-RUBRICS.md +89 -89
- package/ftm-retro/references/templates/REPORT-FORMAT.md +109 -109
- package/ftm-retro.yml +2 -2
- package/ftm-routine/SKILL.md +170 -170
- package/ftm-routine.yml +4 -4
- package/ftm-state/blackboard/capabilities.json +5 -5
- package/ftm-state/blackboard/capabilities.schema.json +27 -27
- package/ftm-state/blackboard/context.json +37 -23
- package/ftm-state/blackboard/experiences/doom-statusline-fix.json +26 -0
- package/ftm-state/blackboard/experiences/hackathon-pages-site.json +26 -0
- package/ftm-state/blackboard/experiences/hindsight-sso-kickoff.json +42 -0
- package/ftm-state/blackboard/experiences/index.json +58 -9
- package/ftm-state/blackboard/experiences/learning-ragnarok-api-access.json +23 -0
- package/ftm-state/blackboard/experiences/nordlayer-members-auto-assign.json +26 -0
- package/ftm-state/blackboard/experiences/saml2aws-stale-session-fix.json +41 -0
- package/ftm-state/blackboard/patterns.json +6 -6
- package/ftm-state/schemas/context.schema.json +130 -130
- package/ftm-state/schemas/experience-index.schema.json +77 -77
- package/ftm-state/schemas/experience.schema.json +78 -78
- package/ftm-state/schemas/patterns.schema.json +44 -44
- package/ftm-upgrade/SKILL.md +194 -194
- package/ftm-upgrade/scripts/check-version.sh +76 -76
- package/ftm-upgrade/scripts/upgrade.sh +143 -143
- package/ftm-upgrade.yml +2 -2
- package/ftm-verify.yml +2 -2
- package/ftm.yml +2 -2
- package/hooks/ftm-auto-log.sh +137 -0
- package/hooks/ftm-blackboard-enforcer.sh +93 -93
- package/hooks/ftm-discovery-reminder.sh +90 -90
- package/hooks/ftm-drafts-gate.sh +61 -61
- package/hooks/ftm-event-logger.mjs +107 -107
- package/hooks/ftm-install-hooks.sh +240 -0
- package/hooks/ftm-learning-capture.sh +117 -0
- package/hooks/ftm-map-autodetect.sh +79 -79
- package/hooks/ftm-pending-sync-check.sh +22 -22
- package/hooks/ftm-plan-gate.sh +92 -92
- package/hooks/ftm-post-commit-trigger.sh +57 -57
- package/hooks/ftm-post-compaction.sh +138 -0
- package/hooks/ftm-pre-compaction.sh +147 -0
- package/hooks/ftm-session-end.sh +52 -0
- package/hooks/ftm-session-snapshot.sh +213 -0
- package/hooks/settings-template.json +81 -81
- package/install.sh +363 -363
- package/package.json +84 -84
- package/uninstall.sh +25 -25
package/ftm-config.default.yml
CHANGED
|
@@ -1,82 +1,125 @@
|
|
|
1
|
-
# FTM Skills Configuration
|
|
2
|
-
# Edit this file or use /ftm-config to modify settings
|
|
3
|
-
|
|
4
|
-
# Model profiles control which model is used at each stage
|
|
5
|
-
# Options: opus, sonnet, haiku, inherit (use session default)
|
|
6
|
-
profile: balanced # quality | balanced | budget | custom | inherit
|
|
7
|
-
|
|
8
|
-
profiles:
|
|
9
|
-
quality:
|
|
10
|
-
planning: opus # brainstorm, research, plan generation
|
|
11
|
-
execution: opus # agent task implementation
|
|
12
|
-
review: sonnet # audit, debug review, council synthesis
|
|
13
|
-
|
|
14
|
-
balanced:
|
|
15
|
-
planning: opus
|
|
16
|
-
execution: sonnet
|
|
17
|
-
review: sonnet
|
|
18
|
-
|
|
19
|
-
budget:
|
|
20
|
-
planning: sonnet
|
|
21
|
-
execution: sonnet
|
|
22
|
-
review: haiku
|
|
23
|
-
|
|
24
|
-
inherit:
|
|
25
|
-
planning: inherit
|
|
26
|
-
execution: inherit
|
|
27
|
-
review: inherit
|
|
28
|
-
|
|
29
|
-
custom:
|
|
30
|
-
planning: opus
|
|
31
|
-
execution: sonnet
|
|
32
|
-
review: haiku
|
|
33
|
-
|
|
34
|
-
# Execution preferences
|
|
35
|
-
execution:
|
|
36
|
-
agent_mode: bypassPermissions # permission mode for ALL spawned agents
|
|
37
|
-
# options: bypassPermissions, acceptEdits, dontAsk, default, auto
|
|
38
|
-
max_parallel_agents: 5 # max agents dispatched simultaneously
|
|
39
|
-
per_skill_overrides: # skills read their own override, fall back to global
|
|
40
|
-
ftm-researcher: 10
|
|
41
|
-
ftm-executor: 8
|
|
42
|
-
ftm-debug: 6
|
|
43
|
-
ftm-brainstorm: 3 # fallback if researcher unavailable
|
|
44
|
-
auto_audit: true # run ftm-audit after each executor task
|
|
45
|
-
progress_tracking: true # write PROGRESS.md during execution
|
|
46
|
-
approval_mode: plan_first # plan_first | always_ask
|
|
47
|
-
# plan_first: every task gets a plan, micro tasks get inline plans
|
|
48
|
-
# always_ask: always present full plan, even for micro tasks
|
|
49
|
-
tdd_mode: false # when true, agents must write tests before implementation
|
|
50
|
-
# spec reviewer enforces RED-GREEN-REFACTOR compliance
|
|
51
|
-
|
|
52
|
-
# Two-stage review — runs after each task agent completes, before ftm-audit
|
|
53
|
-
review:
|
|
54
|
-
spec_reviewer_model: haiku # fast, cheap — checks spec compliance only
|
|
55
|
-
quality_reviewer_model: opus # thorough — checks code quality and bug risk
|
|
56
|
-
skip_quality_review: false # set true to run spec review only (faster execution)
|
|
57
|
-
|
|
58
|
-
# Skill enable/disable — set enabled: false to prevent ftm-mind from routing to a skill
|
|
59
|
-
skills:
|
|
60
|
-
ftm-brainstorm: { enabled: true }
|
|
61
|
-
ftm-executor: { enabled: true }
|
|
62
|
-
ftm-debug: { enabled: true }
|
|
63
|
-
ftm-audit: { enabled: true }
|
|
64
|
-
ftm-council: { enabled: true }
|
|
65
|
-
ftm-codex-gate: { enabled: true }
|
|
66
|
-
ftm-intent: { enabled: true }
|
|
67
|
-
ftm-diagram: { enabled: true }
|
|
68
|
-
ftm-browse: { enabled: true }
|
|
69
|
-
ftm-pause: { enabled: true }
|
|
70
|
-
ftm-resume: { enabled: true }
|
|
71
|
-
ftm-upgrade: { enabled: true }
|
|
72
|
-
ftm-retro: { enabled: true }
|
|
73
|
-
ftm-config: { enabled: true }
|
|
74
|
-
ftm-git: { enabled: true }
|
|
75
|
-
ftm-mind: { enabled: true }
|
|
76
|
-
ftm-researcher: { enabled: true } # deep parallel research engine
|
|
77
|
-
ftm-map: { enabled: true } # persistent code knowledge graph
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
1
|
+
# FTM Skills Configuration
|
|
2
|
+
# Edit this file or use /ftm-config to modify settings
|
|
3
|
+
|
|
4
|
+
# Model profiles control which model is used at each stage
|
|
5
|
+
# Options: opus, sonnet, haiku, inherit (use session default)
|
|
6
|
+
profile: balanced # quality | balanced | budget | custom | inherit
|
|
7
|
+
|
|
8
|
+
profiles:
|
|
9
|
+
quality:
|
|
10
|
+
planning: opus # brainstorm, research, plan generation
|
|
11
|
+
execution: opus # agent task implementation
|
|
12
|
+
review: sonnet # audit, debug review, council synthesis
|
|
13
|
+
|
|
14
|
+
balanced:
|
|
15
|
+
planning: opus
|
|
16
|
+
execution: sonnet
|
|
17
|
+
review: sonnet
|
|
18
|
+
|
|
19
|
+
budget:
|
|
20
|
+
planning: sonnet
|
|
21
|
+
execution: sonnet
|
|
22
|
+
review: haiku
|
|
23
|
+
|
|
24
|
+
inherit:
|
|
25
|
+
planning: inherit
|
|
26
|
+
execution: inherit
|
|
27
|
+
review: inherit
|
|
28
|
+
|
|
29
|
+
custom:
|
|
30
|
+
planning: opus
|
|
31
|
+
execution: sonnet
|
|
32
|
+
review: haiku
|
|
33
|
+
|
|
34
|
+
# Execution preferences
|
|
35
|
+
execution:
|
|
36
|
+
agent_mode: bypassPermissions # permission mode for ALL spawned agents
|
|
37
|
+
# options: bypassPermissions, acceptEdits, dontAsk, default, auto
|
|
38
|
+
max_parallel_agents: 5 # max agents dispatched simultaneously
|
|
39
|
+
per_skill_overrides: # skills read their own override, fall back to global
|
|
40
|
+
ftm-researcher: 10
|
|
41
|
+
ftm-executor: 8
|
|
42
|
+
ftm-debug: 6
|
|
43
|
+
ftm-brainstorm: 3 # fallback if researcher unavailable
|
|
44
|
+
auto_audit: true # run ftm-audit after each executor task
|
|
45
|
+
progress_tracking: true # write PROGRESS.md during execution
|
|
46
|
+
approval_mode: plan_first # plan_first | always_ask
|
|
47
|
+
# plan_first: every task gets a plan, micro tasks get inline plans
|
|
48
|
+
# always_ask: always present full plan, even for micro tasks
|
|
49
|
+
tdd_mode: false # when true, agents must write tests before implementation
|
|
50
|
+
# spec reviewer enforces RED-GREEN-REFACTOR compliance
|
|
51
|
+
|
|
52
|
+
# Two-stage review — runs after each task agent completes, before ftm-audit
|
|
53
|
+
review:
|
|
54
|
+
spec_reviewer_model: haiku # fast, cheap — checks spec compliance only
|
|
55
|
+
quality_reviewer_model: opus # thorough — checks code quality and bug risk
|
|
56
|
+
skip_quality_review: false # set true to run spec review only (faster execution)
|
|
57
|
+
|
|
58
|
+
# Skill enable/disable — set enabled: false to prevent ftm-mind from routing to a skill
|
|
59
|
+
skills:
|
|
60
|
+
ftm-brainstorm: { enabled: true }
|
|
61
|
+
ftm-executor: { enabled: true }
|
|
62
|
+
ftm-debug: { enabled: true }
|
|
63
|
+
ftm-audit: { enabled: true }
|
|
64
|
+
ftm-council: { enabled: true }
|
|
65
|
+
ftm-codex-gate: { enabled: true }
|
|
66
|
+
ftm-intent: { enabled: true }
|
|
67
|
+
ftm-diagram: { enabled: true }
|
|
68
|
+
ftm-browse: { enabled: true }
|
|
69
|
+
ftm-pause: { enabled: true }
|
|
70
|
+
ftm-resume: { enabled: true }
|
|
71
|
+
ftm-upgrade: { enabled: true }
|
|
72
|
+
ftm-retro: { enabled: true }
|
|
73
|
+
ftm-config: { enabled: true }
|
|
74
|
+
ftm-git: { enabled: true }
|
|
75
|
+
ftm-mind: { enabled: true }
|
|
76
|
+
ftm-researcher: { enabled: true } # deep parallel research engine
|
|
77
|
+
ftm-map: { enabled: true } # persistent code knowledge graph
|
|
78
|
+
ftm-ops: { enabled: true } # personal operations intelligence
|
|
79
|
+
|
|
80
|
+
# Operations intelligence settings (merged from eng-buddy)
|
|
81
|
+
ops:
|
|
82
|
+
personality_style: supportive-direct # supportive-direct | formal | casual
|
|
83
|
+
|
|
84
|
+
mcp_account_rules:
|
|
85
|
+
personal: mcp-atlassian-personal # for user actions (comments, ticket updates)
|
|
86
|
+
admin: mcp-atlassian # for admin/global operations only
|
|
87
|
+
default: personal # always use personal unless explicitly admin
|
|
88
|
+
|
|
89
|
+
approval_gates:
|
|
90
|
+
communication_drafts: always # always | auto | never — require approval before sending comms
|
|
91
|
+
task_status_changes: auto # always | auto | never — Jira/ticket status changes
|
|
92
|
+
capacity_alerts: auto # always | auto | never — when to surface capacity warnings
|
|
93
|
+
|
|
94
|
+
context_loading:
|
|
95
|
+
strategy: smart # smart | full | minimal
|
|
96
|
+
max_daily_files: 3 # max daily files to load at once
|
|
97
|
+
grep_first: true # always grep index before loading full files
|
|
98
|
+
session_snapshot_on_cold_start: true # load last session snapshot if today's daily is sparse
|
|
99
|
+
|
|
100
|
+
alert_thresholds:
|
|
101
|
+
capacity_warning: 90 # percentage
|
|
102
|
+
capacity_alert: 100 # percentage
|
|
103
|
+
context_switches_warning: 20 # per week
|
|
104
|
+
oncall_incidents_warning: 3 # per week
|
|
105
|
+
weekend_work: true # alert on any weekend work
|
|
106
|
+
weekly_hours_warning: 45 # hours per week, alert if exceeded 2 weeks running
|
|
107
|
+
recurring_issue_threshold: 2 # times in 30 days before alerting
|
|
108
|
+
recurring_question_threshold: 3 # times before suggesting documentation
|
|
109
|
+
|
|
110
|
+
drafts:
|
|
111
|
+
directory: ~/.claude/ftm-ops/drafts/ # where communication drafts are stored
|
|
112
|
+
naming: "[recipient]-[topic]-[YYYY-MM-DD].md"
|
|
113
|
+
write_before_display: true # always write file before showing draft in chat
|
|
114
|
+
|
|
115
|
+
# Paths configuration — override for team distribution
|
|
116
|
+
paths:
|
|
117
|
+
brain_py: bin/brain.py # relative to skill install dir, or absolute
|
|
118
|
+
ops_data_dir: ~/.claude/ftm-ops/ # base directory for ops data (daily/, weekly/, patterns/, etc.)
|
|
119
|
+
drafts_dir: ~/.claude/ftm-ops/drafts/ # communication drafts
|
|
120
|
+
inbox_db: ~/.claude/ftm-ops/inbox.db # SQLite database for ops tables
|
|
121
|
+
|
|
122
|
+
# Session management
|
|
123
|
+
session:
|
|
124
|
+
auto_pause_on_exit: false # automatically save state when conversation ends
|
|
125
|
+
state_retention_days: 7 # archive states older than this
|
package/ftm-config.yml
CHANGED
|
@@ -1,2 +1,44 @@
|
|
|
1
|
-
name: ftm-config
|
|
2
|
-
description: Configure ftm skill settings including model profiles, execution preferences, and defaults. Use when user says "ftm config", "ftm settings", "set ftm profile", "ftm model", or wants to change how ftm skills behave.
|
|
1
|
+
name: ftm-config
|
|
2
|
+
description: Configure ftm skill settings including model profiles, execution preferences, ops intelligence settings, and defaults. Use when user says "ftm config", "ftm settings", "set ftm profile", "ftm model", "ftm ops", "ops settings", or wants to change how ftm skills behave.
|
|
3
|
+
|
|
4
|
+
# Operations intelligence settings (merged from eng-buddy)
|
|
5
|
+
ops:
|
|
6
|
+
personality_style: supportive-direct # supportive-direct | formal | casual
|
|
7
|
+
|
|
8
|
+
mcp_account_rules:
|
|
9
|
+
personal: mcp-atlassian-personal # for user actions (comments, ticket updates)
|
|
10
|
+
admin: mcp-atlassian # for admin/global operations only
|
|
11
|
+
default: personal # always use personal unless explicitly admin
|
|
12
|
+
|
|
13
|
+
approval_gates:
|
|
14
|
+
communication_drafts: always # always | auto | never — require approval before sending comms
|
|
15
|
+
task_status_changes: auto # always | auto | never — Jira/ticket status changes
|
|
16
|
+
capacity_alerts: auto # always | auto | never — when to surface capacity warnings
|
|
17
|
+
|
|
18
|
+
context_loading:
|
|
19
|
+
strategy: smart # smart | full | minimal
|
|
20
|
+
max_daily_files: 3 # max daily files to load at once
|
|
21
|
+
grep_first: true # always grep index before loading full files
|
|
22
|
+
session_snapshot_on_cold_start: true # load last session snapshot if today's daily is sparse
|
|
23
|
+
|
|
24
|
+
alert_thresholds:
|
|
25
|
+
capacity_warning: 90 # percentage
|
|
26
|
+
capacity_alert: 100 # percentage
|
|
27
|
+
context_switches_warning: 20 # per week
|
|
28
|
+
oncall_incidents_warning: 3 # per week
|
|
29
|
+
weekend_work: true # alert on any weekend work
|
|
30
|
+
weekly_hours_warning: 45 # hours per week, alert if exceeded 2 weeks running
|
|
31
|
+
recurring_issue_threshold: 2 # times in 30 days before alerting
|
|
32
|
+
recurring_question_threshold: 3 # times before suggesting documentation
|
|
33
|
+
|
|
34
|
+
drafts:
|
|
35
|
+
directory: ~/.claude/ftm-ops/drafts/ # where communication drafts are stored
|
|
36
|
+
naming: "[recipient]-[topic]-[YYYY-MM-DD].md"
|
|
37
|
+
write_before_display: true # always write file before showing draft in chat
|
|
38
|
+
|
|
39
|
+
# Paths configuration — override for team distribution
|
|
40
|
+
paths:
|
|
41
|
+
brain_py: bin/brain.py # relative to skill install dir, or absolute
|
|
42
|
+
ops_data_dir: ~/.claude/ftm-ops/ # base directory for ops data (daily/, weekly/, patterns/, etc.)
|
|
43
|
+
drafts_dir: ~/.claude/ftm-ops/drafts/ # communication drafts
|
|
44
|
+
inbox_db: ~/.claude/ftm-ops/inbox.db # SQLite database for ops tables
|