feat(continue): add Continue.dev integration for VS Code + JetBrains#221
Open
prooshani wants to merge 2 commits intoJuliusBrussee:mainfrom
Open
feat(continue): add Continue.dev integration for VS Code + JetBrains#221prooshani wants to merge 2 commits intoJuliusBrussee:mainfrom
prooshani wants to merge 2 commits intoJuliusBrussee:mainfrom
Conversation
Adds always-on caveman rule for the Continue extension, alongside the existing Cursor/Windsurf/Cline/Copilot integrations. - New .continue/rules/caveman.md with `alwaysApply: true` frontmatter (format per docs.continue.dev/customize/deep-dives/rules) - CI sync: sync-skill.yml now rebuilds the Continue rule file from rules/caveman-activate.md, same pattern used for Cursor/Windsurf - README: install table row (linked to continue.dev), What-You-Get column, and detail block explaining the difference between `.continue/skills/` (on-demand via `npx skills`) and `.continue/rules/` (always-on), with per-project + global install snippets and reload instructions for VS Code and JetBrains - CLAUDE.md + CLAUDE.original.md: synced-files table, CI frontmatter note, and Agent distribution table Tested locally: rule loads in Continue (VS Code) from both the caveman repo and an external project; `alwaysApply: true` confirmed active from first message of a fresh chat. `stop caveman` reverts to normal prose. No changes to existing agents.
Agent-mode tool calls fail with "Tool not found" when caveman is active,
because the compression directive (short synonyms, abbreviate, drop
articles) bleeds into tool_use JSON β model emits `read` instead of
`read_file`, `grep` instead of `grep_search`, `{"fp": ...}` instead of
`{"filepath": ...}`.
Fence added to both source files per CONTRIBUTING.md guidance:
- rules/caveman-activate.md (auto-activation body used by all agent
rule files)
- skills/caveman/SKILL.md (skill body used by Claude Code, Gemini CLI,
etc.)
Agent-specific copies (.cursor/rules, .windsurf/rules, .continue/rules,
.clinerules, copilot-instructions, SKILL.md copies) are left alone;
sync-skill.yml will regenerate them from the updated sources on the
post-merge CI run.
## Repro
1. Enable caveman rule in Continue.dev (VS Code, agent mode)
2. Ask the agent to read a file
3. Model emits `read` β Continue resolver: "Tool not found"
## Verification
Ran the same 11-step tool-call test in the haevn admin-panel workspace,
before and after the fence:
- Before: tool names compressed (`read`, `grep`), multiple "Tool not
found" failures
- After: all tool names exact (`read_file`, `grep_search`,
`file_glob_search`, `run_terminal_command`, `edit_existing_file`).
Step 10 correctly returns file-not-found error from the tool.
Explanation prose remains caveman-style (fragments, dropped articles);
tool_use JSON unaffected.
## Scope
Affects every agent mode with tool calling β Claude Code, Cursor agent,
Windsurf agent, Cline, Continue, Codex. Discovered while testing the
Continue.dev integration in the preceding commit on this PR, but the
bug is upstream-general, not Continue-specific. Bundled here so the
Continue integration ships working from the first merged commit.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds Continue (the open-source AI assistant for VS Code + JetBrains) as a first-class caveman target, alongside the existing Cursor/Windsurf/Cline/Copilot integrations. While verifying the new integration end-to-end I discovered a latent tool-calling bug that affects every existing agent-mode integration too, and bundled the fix here so the Continue integration ships working from the first merged commit.
Two commits on this branch:
feat(continue)β new.continue/rules/caveman.md, CI sync, README/CLAUDE updatesfix(rules)β fence tool calls from caveman compression (edits sources only, CI regenerates agent copies post-merge)Commit 1 β Continue.dev integration
.continue/rules/caveman.mdwithalwaysApply: truefrontmatter β auto-loaded by Continue in any workspace containing the file (format per the Continue rules docs)sync-skill.ymlnow rebuilds the Continue rule fromrules/caveman-activate.mdon every change, same pattern already used for Cursor/WindsurfWhat You Getcolumn, and a detail block that explains the distinction between.continue/skills/(on-demand, whatnpx skills add -a continueinstalls) and.continue/rules/(always-on, what this PR adds). Per-project + global install snippets and reload instructions for both VS Code and JetBrains included.CLAUDE.md+CLAUDE.original.md: synced-files table, CI frontmatter note, and Agent distribution table updated for reviewers/future contributorsCommit 2 β tool-call fence (bug fix)
The bug
When caveman is active in an agent mode (Continue, Cursor, Windsurf, Cline, Codex, Claude Code β any agent that does function/tool calling), tool calls fail with
Tool not found. The compression directive in the rule (short synonyms, abbreviate, drop articles) bleeds into thetool_useJSON, so the model emitsreadinstead ofread_file,grepinstead ofgrep_search,{"fp": ...}instead of{"filepath": ...}, and the tool registry rejects the call.The fix
Added an explicit "tool calls stay exact" fence to both source files:
rules/caveman-activate.mdβ short form (mirrors the terse style of that file)skills/caveman/SKILL.mdβ long form with examples, under its own## Tool CallssectionPer CONTRIBUTING.md, I edited sources only. Post-merge CI will regenerate the agent-specific copies (
.cursor/rules/*.mdc,.windsurf/rules/*.md,.continue/rules/*.md,.clinerules/*.md,.github/copilot-instructions.md, all SKILL.md copies) on its next run.Reproduction
readβ Continue resolver:Tool not foundVerification
I ran an 11-step tool-call test (file reads, codebase grep, glob, terminal, edits, multi-tool chain, intentional-error path) in a separate project (haevn admin-panel) under three configurations:
Tool not foundfailures on abbreviated tool namesread_file,grep_search,file_glob_search,run_terminal_command,edit_existing_file. Explanation prose still caveman-style (fragments, dropped articles). Tool_use JSON untouched.Files changed
No existing agent behavior changed (the fence makes tool calls work where they were silently failing). No secrets, no destructive edits.
Test plan
name,description,alwaysApply: true).continue/rules/caveman.mdstop caveman/normal modereverts to normal prose (auto-clarity preserved)Notes for reviewer
<details>for Cursor/Windsurf/Cline/Copilot rather than creating a new top-level section, since the mechanism (workspace rule file with always-on frontmatter) is identical to Cursor/Windsurf.npx skills add -a continueis already supported upstream by vercel-labs/skills β no coordination needed there. That command installs into.continue/skills/(on-demand). This PR complements it with the always-on rule path.