Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
4bc1790
refactor: update button styles and colors for improved consistency ac…
mrleemurray May 12, 2026
b1ffb08
style: enhance secondary button border colors for dropdowns
mrleemurray May 12, 2026
4a4e105
Update chat input send button to be circular (#319506)
hawkticehurst Jun 4, 2026
5e68f44
increase debounce to reduce flickering (#319984)
justschen Jun 4, 2026
1ca3525
Make browser toolbar more configurable (#319986)
kycutler Jun 4, 2026
d56ae73
address more image attachment optimizations + caching (#319966)
justschen Jun 5, 2026
1100b7d
make sure input switches when editing prev requests (#320024)
justschen Jun 5, 2026
fe9d0dd
Fix overlapping inline actions in quick inputs (#320025)
kycutler Jun 5, 2026
4046533
move more progress parts to shimmer (#320020)
justschen Jun 5, 2026
c5e7f26
Upgrade Playwright to 1.61.0-alpha-2026-06-04 (#319067)
jruales Jun 5, 2026
7b00c19
Prevent call-after-dispose when browser tabs are closed (#320021)
kycutler Jun 5, 2026
8c026b1
Remove Content-Length header from MCP requests since it's disallowed …
dmitrivMS Jun 5, 2026
2ff28e0
feat: add skill file parsing and enhance completion item with skill d…
DonJayamanne Jun 5, 2026
abb6325
fix: improve connection registration logic in startAgentHost (#320032)
DonJayamanne Jun 5, 2026
5fd263f
Chronicle: consolidate /chronicle standup into the skill workflow (#3…
vijayupadya Jun 5, 2026
ea1e491
Update chat session icons and order (#319507)
hawkticehurst Jun 5, 2026
df25ea5
feat: enhance session customization handling with throttling and canc…
DonJayamanne Jun 5, 2026
516eb0c
Remove agent-host branch and isolation pickers (#320014)
roblourens Jun 5, 2026
db81a24
Agents: Indent chat session list items (#320006)
hawkticehurst Jun 5, 2026
38046b5
Add better guards for Specialized Subagents and BG Todo Agent (#319978)
vritant24 Jun 5, 2026
557cfb0
chat: stop agent host config update loop across windows (#320015)
roblourens Jun 5, 2026
628f6fe
Browser: Match ExP value for setting `workbench.browser.enableChatToo…
jruales Jun 5, 2026
c1c20ad
agentHost: support attaching virtual resources (untitled, notebook ce…
connor4312 Jun 5, 2026
e72ca87
Merge pull request #316004 from microsoft/mrleemurray/update-secondar…
mrleemurray Jun 5, 2026
248c024
Refactor border-radius styles for consistency (#320065)
mrleemurray Jun 5, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion build/lib/policies/policyData.jsonc
Original file line number Diff line number Diff line change
Expand Up @@ -556,7 +556,7 @@
}
},
"type": "boolean",
"default": false,
"default": true,
"included": true
},
{
Expand Down
4 changes: 2 additions & 2 deletions extensions/copilot/assets/prompts/chronicle-standup.prompt.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,6 @@
name: chronicle:standup
description: Generate a standup report from recent chat sessions
---
Generate a standup report from my recent coding sessions. Use the **chronicle** skill — it documents the `copilot_sessionStoreSql` tool and the Standup workflow (call with `action: "standup"` to pre-fetch the last 24h of sessions, turns, files, and refs).
Generate a standup report from my recent coding sessions. Use the **chronicle** skill — it documents the `copilot_sessionStoreSql` tool, the session-store schema, and the Standup workflow for summarizing the last 24h of activity from `sessions`, `session_refs`, `turns`, and `session_files`.

When you invoke `copilot_sessionStoreSql`, set `subcommand: "standup"`.
When you invoke `copilot_sessionStoreSql`, set `subcommand: "standup"` on every call.
43 changes: 30 additions & 13 deletions extensions/copilot/assets/prompts/skills/chronicle/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,25 +13,41 @@ Sessions may be stored locally (SQLite) and optionally synced to the cloud for c

## Available Tool Actions

The `copilot_sessionStoreSql` tool supports three actions:
The `copilot_sessionStoreSql` tool supports two actions:

| Action | Purpose | `query` param |
|--------|---------|---------------|
| `standup` | Pre-fetch last 24h sessions, turns, files, refs | Not needed |
| `query` | Execute a read-only SQL query | Required |
| `reindex` | Rebuild local session index + cloud sync | Not needed |

## Workflows

### Standup

When the user asks for a standup, daily summary, or "what did I do":
When the user asks for a standup, daily summary, or "what did I do" (e.g. `/chronicle standup`):

1. Call `copilot_sessionStoreSql` with `action: "standup"` and `description: "Generate standup"`.
2. The tool returns pre-fetched session data (sessions, turns, files, refs from the last 24 hours).
3. If the result is empty, tell the user no sessions were found in the last 24h, suggest `/chronicle reindex`, and stop — do not fabricate a standup.
4. For any PR references in the data, check their current status (open, merged, draft) if possible.
5. Format the returned data as a standup report grouped by work stream (branch/feature):
**Step 1: Gather the last 24h of activity**

Use `copilot_sessionStoreSql` with `action: "query"` and follow the SQL dialect shown in the tool description (SQLite locally, DuckDB on cloud — see the **Database Schema** and **Query Guidelines** sections below).

Query the `sessions` table for rows where `updated_at` falls within the last 24 hours, ordered by `updated_at` descending. Recent-window predicate by backend:

- **Local SQLite**: `WHERE updated_at >= datetime('now', '-1 day')`
- **Cloud DuckDB**: `WHERE updated_at >= now() - INTERVAL '1 day'`

Then, for those session ids, pull related references from `session_refs` (PRs, issues, commits). If you need more detail on a particular session, query `turns` (and `session_files`, or `checkpoints` on cloud) further — don't dump every turn for every session up front.

If no sessions are found in the last 24 hours, tell the user there's no recent activity to report, suggest a longer window or `/chronicle reindex`, and stop. Do not fabricate a standup.

**Step 2: Include PR-less work**

Treat every recent session as a candidate work item, even when it has no PR, issue, or commit reference. PRs are supporting evidence, not the source of truth. Do not omit a session or branch solely because it has no PR — use session summaries and turn content to decide what to include.

**Step 3: Check PR status and format**

For any PR references found, use the GitHub CLI or MCP tools to check current status (open, merged, draft, closed). For each work item, include either a PR status line or a "No PR found" line — never invent a PR.

Format the result grouped by work stream (branch/feature). Use exactly this structure:

```
Standup for <date>:
Expand All @@ -41,26 +57,27 @@ Standup for <date>:
**Feature name** (`branch-name` branch, `repo-name`)
- 3-7 words describing the status
- Key files: 2-3 most important files changed
- Merged: [#123](link)
- Session: `session-id`
- Merged: [#123](https://github.com/owner/repo/pull/123) or No PR found
- Session: `full-session-id`

**🚧 In Progress**

**Feature name** (`branch-name` branch, `repo-name`)
- 3-7 words describing the current state of work
- Key files: 2-3 most important files being worked on
- Draft: [#789](link)
- Session: `session-id`
- Draft: [#789](https://github.com/owner/repo/pull/789) or No PR found
- Session: `full-session-id`
```

Rules:
- Keep it concise and succinct — the user can always ask follow-up questions
- Use turn data (user messages AND assistant responses) to understand WHAT was done
- Use file paths to identify which components/areas were affected
- Use file paths from `session_files` to identify which components/areas were affected
- Group related sessions on the same branch into one entry
- For sessions, only show the most recent session per feature/branch
- Link PRs and issues using markdown link syntax
- Classify as Done if work appears complete, In Progress otherwise
- If a session has no branch or repo, include it under an "Other" section

### Tips

Expand Down
5 changes: 2 additions & 3 deletions extensions/copilot/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -1236,7 +1236,7 @@
"toolReferenceName": "sessionStoreSql",
"when": "github.copilot.sessionSearch.enabled",
"userDescription": "Query your Copilot session history using SQL",
"modelDescription": "Query the local session store containing history from past coding sessions. Uses SQLite syntax (NOT DuckDB or Postgres). SQL queries are read-only — only SELECT and WITH are allowed. Use `datetime('now', '-1 day')` for date math (NOT `now() - INTERVAL '1 day'`), FTS5 `MATCH` for text search.\n\nTables: `sessions`, `turns`, `session_files`, `session_refs`, `checkpoints`, `search_index`. For column details and query patterns, use the **chronicle** skill.\n\nActions: 'query' (execute SQL — supports JOINs, FTS5 MATCH, aggregations), 'standup' (pre-fetch last 24h data), 'reindex' (rebuild index from debug logs).",
"modelDescription": "Query the local session store containing history from past coding sessions. Uses SQLite syntax (NOT DuckDB or Postgres). SQL queries are read-only — only SELECT and WITH are allowed. Use `datetime('now', '-1 day')` for date math (NOT `now() - INTERVAL '1 day'`), FTS5 `MATCH` for text search.\n\nTables: `sessions`, `turns`, `session_files`, `session_refs`, `checkpoints`, `search_index`. For column details and query patterns, use the **chronicle** skill.\n\nActions: 'query' (execute SQL — supports JOINs, FTS5 MATCH, aggregations), 'reindex' (rebuild index from debug logs).",
"tags": [],
"canBeReferencedInPrompt": false,
"inputSchema": {
Expand All @@ -1246,10 +1246,9 @@
"type": "string",
"enum": [
"query",
"standup",
"reindex"
],
"description": "The action to perform. 'query' (default) executes a SQL query. 'standup' pre-fetches last 24h session data for standup reports. 'reindex' rebuilds the local session index and syncs to cloud if enabled."
"description": "The action to perform. 'query' (default) executes a SQL query. 'reindex' rebuilds the local session index and syncs to cloud if enabled."
},
"query": {
"type": "string",
Expand Down
161 changes: 0 additions & 161 deletions extensions/copilot/src/extension/chronicle/common/standupPrompt.ts

This file was deleted.

Loading
Loading