Add /chronicle command set to Agent Host
@vijayupadya is already working on this.
Since Jun 9, 2026.
Assessment
This issue has not been assessed yet.
Description
Summary
Add the /chronicle command family (standup, search, tips, cost-tips, improve, reindex) to the Agent Host so users can invoke session history insights directly from VS Code chat.
Motivation
The /chronicle commands provide powerful session history analysis (standup reports, usage tips, cost optimization, workflow improvements) via the session_store_sql tool. These are currently available through the CLI but not surfaced in VS Code's Agent Host. Users should be able to access these from the same chat surface where they do their work.
Subcommands
| Subcommand | Behavior | Description |
|---|---|---|
standup |
agent-prompt | Get a report on your work from the last day |
search <query> |
agent-prompt | Search all session content by keyword or topic |
tips |
agent-prompt | Get personalized tips based on usage patterns |
cost-tips |
agent-prompt | Get tips to reduce token usage and cost |
improve |
agent-prompt | Suggest improvements to copilot-instructions.md |
reindex |
local (no model) | Rebuild the session store index |
Implementation Plan
Phase 1: Completion Provider (discoverability)
-
Extend
CopilotSlashCommandNameincopilotSlashCommandCompletionProvider.ts— add'chronicle'to the type union,COMMANDSarray, andgetCommandDescription(). Insert text should be/chronicle(trailing space to prompt subcommand entry). -
Add chronicle subcommand completions — detect
/chronicleprefix and offer sub-completions for the 6 subcommands. Either extend the existing provider or create a dedicated provider. -
Update
parseLeadingSlashCommand()regex to recognize/chroniclefollowed by optional subcommand + remaining text.
Phase 2: Command Execution (send handler)
-
Add chronicle dispatch in
CopilotAgentSession.send()— parse subcommand fromslashCommand.rest, build the agent prompt, inject as message text. Forreindex: complete turn locally (like/compact). -
Create
chroniclePrompts.ts— new file atsrc/vs/platform/agentHost/node/copilot/chroniclePrompts.tswith prompt builders for each subcommand (standup, search, tips, cost-tips, improve). Each prompt instructs the model to usesession_store_sqlwith the appropriate schema.
Phase 3: Tool & Store Availability
- Ensure
session_store_sqlis available — verify the tool is registered for agent host sessions when chronicle prompts are injected. The tool needs access to the session store (cloud DuckDB or local SQLite).
Phase 4: Feature Gating
- Add config/feature flag — gate behind a config key (similar to
AgentHostConfigKey.RubberDuck). Hide from completions when disabled or when no session store is available.
Relevant Files
src/vs/platform/agentHost/node/copilot/copilotSlashCommandCompletionProvider.ts— command list, type, regexsrc/vs/platform/agentHost/node/copilot/copilotAgentSession.ts—send()dispatchsrc/vs/platform/agentHost/node/copilot/chroniclePrompts.ts— new, prompt builderssrc/vs/platform/agentHost/node/copilot/copilotAgent.ts— provider registrationextensions/copilot/src/extension/tools/common/toolNames.ts— already hasSessionStoreSqlextensions/copilot/src/extension/chronicle/vscode-node/sessionStoreTracker.ts— session store writer (reference)
Design Decisions
- Prompt injection pattern: Same approach as
/plan,/research,/rubber-duck— rewrite prompt text insend()before forwarding to the SDK. - Cloud vs. local store: Target cloud session store (DuckDB syntax) since the agent host is connected to GitHub. Fall back to local SQLite if cloud is unavailable.
- Subcommand completion UX: Space-separated form (
/chronicle standup) matching existing parser behavior. reindexhandling: Complete turn locally (like/compact) since it's a side-effect, not a model interaction./chronicle searchwithout query: Return inline help text rather than invoking the model.
Verification
- Type
/→ chronicle appears in completion list with description - Type
/chronicle→ subcommand completions appear - Submit
/chronicle standup→ model receives prompt and usessession_store_sql - Submit
/chronicle reindex→ completes locally without model - Feature flag off → command hidden from completions and rejected in send
- Unit tests for command parsing and prompt generation
- Dominant language
- TypeScript
- Stars
- 193k
- Forks
- 42.9k
- PR merge metrics
- PR metrics pending
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from microsoft/vscode
-
testplan-item
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
new release
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
testplan-item
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
-
testplan-item
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
All issues in microsoft/vscode
Similar issues
-
clawsweeper:fix-shape-clear clawsweeper:queueable-fix clawsweeper:source-repro impact:ux-friction issue-rating: 🦞 diamond lobster no-stale P3
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
community first-timers-only good first issue hacktoberfest help wanted low hanging fruit up-for-grabs
Difficulty 1/5 Under an hour Newbie friendliness 76/100
-
code-quality refactoring
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
github/gh-aw-firewall#8816 ·
-
integration:quickjs org:external priority:backlog topic:code-interpreter topic:middleware type:feature
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
langchain-ai/deepagents#6450 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 88/100
vercel/react-tweet#225 ·