David Kaya and Copilot
d84b3021f2
feat: add sidecar turn cancellation
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-25 22:04:14 +01:00
David Kaya and Copilot
e5878ba9e8
feat: auto-discover MCP servers from project and user config files
...
Scan .vscode/mcp.json, .mcp.json, .copilot/mcp.json (project-level) and
~/.copilot/mcp.json (user-level) for MCP server definitions. Discovered
servers require explicit user acceptance before activation.
Backend:
- Add ConfigScannerRegistry with per-format scanners and substitution
- Add discovered tooling domain model with fingerprint-based change detection
- Integrate scanning into workspace load, project add, and project selection
- Merge accepted discovered MCPs into effective runtime tooling
- Extend sidecar contracts with env/headers for real-world MCP configs
- Add IPC channels for accept/dismiss/rescan operations
Frontend:
- Add DiscoveredToolingModal for reviewing pending MCP servers
- Auto-show modal when pending discoveries exist on load or project switch
- Add amber badge on sidebar project headers for pending discoveries
- Add discovered MCP section in Settings panel with accept/dismiss/rescan
- Group InlinePills tool dropdown by Workspace MCP / User MCP / Project MCP
- Pass effective project tooling (including accepted discoveries) to ChatPane
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-25 21:54:06 +01:00
David Kaya and Copilot
cc3c04b841
feat: enable scratchpad tooling frontend and instruction update
...
- Remove !isScratchpad gate on tooling/approval pills in ChatPane
- Update scratchpad agent guidance to permit tool/file usage
- Add EryxAppService scratchpad tooling integration tests
- Update ARCHITECTURE.md to reflect scratchpad tooling support
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-25 21:20:43 +01:00
David Kaya and Copilot
4ecfa5bff6
feat: enable scratchpad tooling backend
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-25 21:14:19 +01:00
David Kaya and Copilot
ab4e217d74
refactor: rename app to aryx
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-25 21:11:36 +01:00
David Kaya and Copilot
1bd0fcba3e
refactor: improve sidecar backend structure
...
Refactor sidecar command dispatch, approval handling, transcript projection, stream merging, and tooling helpers while preserving behavior and expanding backend regression coverage.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-25 20:11:59 +01:00
David Kaya and Copilot
f2c5b2cf1a
fix: preserve handoff final authorship
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-25 00:15:30 +01:00
David Kaya and Copilot
6460fe7173
fix: preserve agent authorship across projections
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-25 00:10:56 +01:00
David Kaya and Copilot
9bfd7837aa
fix: preserve handoff agent identity
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-25 00:02:46 +01:00
David Kaya and Copilot
7c848113c0
fix: correct handoff output attribution
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-24 23:55:30 +01:00
David Kaya
2fc03454c4
fix: block tools for handoff triage\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-24 23:51:38 +01:00
David Kaya and Copilot
2c972a063a
fix: tighten handoff routing behavior
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-24 23:47:31 +01:00
David Kaya and Copilot
2e2caf78f9
feat: add graph-backed orchestration topology
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-24 22:44:17 +01:00
David Kaya and Copilot
5ab0b22d15
fix: align orchestration behavior with agent framework docs
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-24 22:09:52 +01:00
David Kaya and Copilot
cf6a25a9da
refactor: simplify handoff payload parsing
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-24 21:37:36 +01:00
David Kaya and Copilot
8b2e7cd2c0
refactor: simplify workflow request interpretation
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-24 21:29:35 +01:00
David Kaya and Copilot
f1a96773c8
refactor: decompose CopilotWorkflowRunner
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-24 21:10:06 +01:00
David Kaya and Copilot
44d9c43b09
refactor: resolve approval tools from SDK call ids
...
- correlate permission requests to tool names via ToolCallId when the
workflow request stream exposes matching CallId values
- keep the url-to-web_fetch alias only as a narrow fallback when a
matching tool call cannot be recovered
- cover generic permission-category lookup for url, shell, and read in
sidecar tests
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-24 21:03:16 +01:00
David Kaya and Copilot
7622d047b1
fix: auto-approve URL permission requests
...
- map GitHub Copilot SDK PermissionRequestUrl to web_fetch so runtime
tool auto-approval matches URL fetch permissions
- include hook tool names in approval tool-name extraction
- include requested URLs in approval detail when manual review is still
required
- add sidecar tests covering URL and hook permission handling
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-24 20:43:06 +01:00
David Kaya and Copilot
130b114906
fix: use runtime tools for approval auto-approval
...
- load runtime tools dynamically from Copilot CLI capabilities via tools.list
- merge runtime tools with configured MCP and LSP tools in the approval catalog
- keep a fallback builtin runtime tool list when capabilities are unavailable
- move approval-tool pruning to the app service so dynamic tools are not dropped on load
- update approval UI and docs to use the corrected runtime-tool model
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-24 20:16:11 +01:00
David Kaya and Copilot
d5c538eed9
feat: add tool-specific approval overrides
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-24 20:02:29 +01:00
David Kaya and Copilot
2aa8d73b2d
feat: add approval checkpoints backend
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-24 19:48:58 +01:00
David Kaya and Copilot
b742941559
feat: add rich run timeline backend
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-24 00:04:47 +01:00
David Kaya and Copilot
082af36255
fix: stabilize streamed message rendering
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-23 23:49:12 +01:00
David Kaya and Copilot
b88299f962
fix: improve streaming message merging
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-23 23:31:06 +01:00
David Kaya and Copilot
794722673b
fix: strengthen group chat collaboration guidance
...
Audit confirmed that single, sequential, concurrent, and handoff are mapped to distinct workflow builders as intended. Group-chat was also using the correct round-robin manager, but the agents only had one-shot role prompts, so the reviewer could behave like a fresh assistant instead of refining the draft in progress. Add explicit runtime guidance for group-chat participants plus clearer built-in Writer/Reviewer instructions and regression coverage.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-23 23:22:09 +01:00
David Kaya and Copilot
cf699b2442
fix: stabilize TypeScript LSP startup
...
Seed new TypeScript LSP profiles with --stdio, validate that shared profiles keep the required flag, auto-add it for existing profiles in the sidecar runtime, and include recent stderr when a language server dies before completing a request. Add shared and sidecar regression coverage.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-23 23:16:48 +01:00
David Kaya and Copilot
fe7155764c
fix: resolve LSP serializer options
...
Configure the sidecar LSP tool serializer with a DefaultJsonTypeInfoResolver and freeze it read-only before handing it to AIFunctionFactory. Add regression coverage so enabling LSP-backed tools cannot reintroduce the runtime JsonSerializerOptions failure.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-23 23:12:23 +01:00
David Kaya and Copilot
efa5c44e07
feat: add MCP and LSP tooling support
...
Add global MCP/LSP settings, per-session Activity toggles, sidecar runtime integration, tests, and documentation updates.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-23 22:51:03 +01:00
David Kaya and Copilot
50a8e5dfbe
refactor: rename Kopaya to Eryx
...
Rename the product, runtime surfaces, sidecar projects, docs, tests, and packaging outputs from Kopaya to Eryx across the repository.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com >
2026-03-23 22:01:23 +01:00