feat: Add GitHub Copilot CLI support#29
Open
sryku2000 wants to merge 2 commits intopablodelucca:mainfrom
Open
Conversation
…atibility ## Major Changes ### GitHub Copilot CLI Integration - Add dual AI agent type support (Claude Code + GitHub Copilot CLI) - Implement Copilot event format parser (tool.execution_start, tool.execution_complete, assistant.turn_end) - Create configManager.ts with agent-type-aware path helpers - Add getSessionFilePath() and inferAgentTypeFromPath() for dual-format support - Update transcriptParser.ts with processCopilotEvent() and processTranscriptLineWithFormat() ### Core Improvements - Fix agent command: change 'gh copilot' to 'copilot --resume' - Fix project directory detection for Copilot (no workspace required) - Add agentType field to AgentState and PersistedAgent for format persistence - Update file watching to support both JSONL formats: - Claude: ~/.claude/projects/<workspace-hash>/<session-id>.jsonl - Copilot: ~/.copilot/session-state/<session-id>/events.jsonl ### Cross-Platform Compatibility - Normalize path separators for Windows/Linux/macOS compatibility - Use path.join() and os.homedir() for all path operations - Create PLATFORM_SUPPORT.md documentation - Tested on macOS, should work on Linux/Ubuntu and Windows (WSL) ### UI/UX Enhancements - Add agent type selector in Settings modal - Simplify default layout (remove furniture dependencies) - Update README with dual-agent documentation - Add usage instructions for switching between Claude and Copilot ### Documentation - Create comprehensive PLATFORM_SUPPORT.md - Update README with Copilot CLI requirements - Document event format differences - Add cross-platform testing checklist ## Technical Details **Event Mapping:** - tool.execution_start → agentToolStart - tool.execution_complete → agentToolDone - assistant.turn_end → agentStatus: 'waiting' - assistant.turn_start → clear activity **Testing:** - ✅ Agent creation working - ✅ Tool execution tracking working - ✅ Character animations working - ✅ Turn completion detection working Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
will this be compatible with normal chat session with copilot instead of the cli? |
Author
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.

Overview
This PR adds comprehensive GitHub Copilot CLI support alongside the existing Claude Code integration, enabling users
to choose their preferred AI agent.
Major Changes
🤖 GitHub Copilot CLI Integration (630022a)
tool.execution_complete, assistant.turn_end)
configManager.tswith agent-type-aware path helpers~/.claude/projects/<workspace-hash>/<session-id>.jsonl~/.copilot/session-state/<session-id>/events.jsonl🌍 Cross-Platform Compatibility
path.join()andos.homedir()throughoutPLATFORM_SUPPORT.mddocumentation🎨 UI/UX Improvements
🏢 Default Layout Restoration (2ba10a9)
Testing
Documentation
PLATFORM_SUPPORT.mdwith cross-platform testing checklistBreaking Changes
None - this is backward compatible. Existing Claude Code users are unaffected.