Skip to content

feat: Add GitHub Copilot CLI support#29

Open
sryku2000 wants to merge 2 commits intopablodelucca:mainfrom
sryku2000:main
Open

feat: Add GitHub Copilot CLI support#29
sryku2000 wants to merge 2 commits intopablodelucca:mainfrom
sryku2000:main

Conversation

@sryku2000
Copy link

@sryku2000 sryku2000 commented Feb 25, 2026

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)

  • Dual AI agent support: Users can now choose between Claude Code and GitHub Copilot CLI
  • Event format parser: Complete implementation for Copilot's event format (tool.execution_start,
    tool.execution_complete, assistant.turn_end)
  • Config management: New configManager.ts with agent-type-aware path helpers
  • Session file handling: Support for both formats:
    • Claude: ~/.claude/projects/<workspace-hash>/<session-id>.jsonl
    • Copilot: ~/.copilot/session-state/<session-id>/events.jsonl

🌍 Cross-Platform Compatibility

  • Normalized path separators for Windows/Linux/macOS
  • Used path.join() and os.homedir() throughout
  • Added comprehensive PLATFORM_SUPPORT.md documentation
  • Tested on macOS with expected compatibility for Linux and Windows (WSL)

🎨 UI/UX Improvements

  • Agent type selector added to Settings modal
  • Simplified default layout for better first-run experience
  • Updated README with dual-agent documentation

🏢 Default Layout Restoration (2ba10a9)

  • Restored original author's default office layout design

Testing

  • ✅ Agent creation working for both types
  • ✅ Tool execution tracking working
  • ✅ Character animations working
  • ✅ Turn completion detection working

Documentation

  • New PLATFORM_SUPPORT.md with cross-platform testing checklist
  • Updated README with Copilot CLI requirements and usage instructions
  • Documented event format differences between Claude and Copilot

Breaking Changes

None - this is backward compatible. Existing Claude Code users are unaffected.

sryku2000 and others added 2 commits February 25, 2026 08:41
…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>
@sryku2000 sryku2000 changed the title feat: Add GitHub Copilot CLI support and restore default layout feat: Add GitHub Copilot CLI support Feb 25, 2026
@kawaishinzou
Copy link

will this be compatible with normal chat session with copilot instead of the cli?

@sryku2000
Copy link
Author

sryku2000 commented Mar 6, 2026

will this be compatible with normal chat session with copilot instead of the cli?

It still uses TUI for dialogue, but a new option for adjusting the GitHub Copilot CLI has been added.
截圖 2026-03-06 上午9 10 32

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants