Commit 2f6e3c8
committed
Replace shell-based context updates with marker-based upsert
Replace ~3500 lines of bash/PowerShell agent context update scripts
with a Python-based approach using <!-- SPECKIT START/END --> markers.
IntegrationBase now manages the agent context file directly:
- upsert_context_section(): creates or updates the marked section at
init/install/switch time with a directive to read the current plan
- remove_context_section(): removes the section at uninstall, deleting
the file only if it becomes empty
- __CONTEXT_FILE__ placeholder in command templates is resolved per
integration so the plan command references the correct agent file
- context_file is persisted in init-options.json for extension access
The plan command template instructs the LLM to update the plan
reference between the markers in the agent context file.
Removed:
- scripts/bash/update-agent-context.sh (857 lines)
- scripts/powershell/update-agent-context.ps1 (515 lines)
- 56 integration wrapper scripts (update-context.sh/.ps1)
- templates/agent-file-template.md
- agent_scripts frontmatter key and {AGENT_SCRIPT} replacement logic
- update-context reference from integration.json
- tests/test_cursor_frontmatter.py (tested deleted scripts)
Added:
- upsert/remove context section methods on IntegrationBase
- __CONTEXT_FILE__ placeholder support in process_template()
- context_file field in init-options.json (init/switch/uninstall)
- Per-integration tests: context file correctness, plan reference,
init-options persistence (78 new context_file tests)
- End-to-end CLI validation across all 28 integrations1 parent ba9a8b8 commit 2f6e3c8
82 files changed
Lines changed: 555 additions & 3515 deletions
File tree
- scripts
- bash
- powershell
- src/specify_cli
- integrations
- agy/scripts
- amp/scripts
- auggie/scripts
- bob/scripts
- claude/scripts
- codebuddy/scripts
- codex/scripts
- copilot
- scripts
- cursor_agent/scripts
- forge
- scripts
- gemini/scripts
- generic
- scripts
- goose/scripts
- iflow/scripts
- junie/scripts
- kilocode/scripts
- kimi/scripts
- kiro_cli/scripts
- opencode/scripts
- pi/scripts
- qodercli/scripts
- qwen/scripts
- roo/scripts
- shai/scripts
- tabnine/scripts
- trae/scripts
- vibe/scripts
- windsurf/scripts
- templates
- commands
- tests
- integrations
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
28 | 28 | | |
29 | 29 | | |
30 | 30 | | |
31 | | - | |
32 | 31 | | |
33 | 32 | | |
34 | 33 | | |
| |||
0 commit comments