[#279] ✨ - Introduce the new Copilot agent - #282
Merged
Conversation
…-flow into feature/279-introduce-the-new-copilot-agent
…d for advanced code analysis and manipulation in CLI Added a new 'copilot' command to the CLI, enabling users to interact with the Copilot agent for code analysis and modification. This includes options for prompts, branch selection, debugging, and output formatting. Enhanced error handling and user feedback for required parameters, ensuring a smoother user experience. The command processes prompts and provides detailed responses, including changes made and performance metrics.
…nctionality: Implement virtual codebase management and improved file handling This update introduces a virtual codebase for the Copilot agent, allowing for better management of proposed changes. The `applyChange` method now checks if files are within the working directory before writing to disk, ensuring safer file operations. Additionally, error handling has been enhanced to log issues when applying changes. The `extractChanges` method has been updated to utilize tool results for more accurate change tracking. Tests have been updated to reflect these changes, ensuring robust functionality.
…and execute_command tools for enhanced code management This update introduces the `apply_changes` tool, allowing the Copilot agent to write proposed changes from the virtual codebase to the actual file system, ensuring safer file operations within the working directory. Additionally, the `execute_command` tool has been added to enable the execution of shell commands for verification of code changes. The `propose_change` tool has been updated to clarify that changes are only applied in memory until explicitly written to disk. Documentation and tests have been enhanced to reflect these new functionalities and ensure robust performance.
…pilot_dummy directory and update system_prompt_builder.ts and execute_command_tool.ts to clarify critical workflow rules and command execution guidelines. Emphasize the importance of using the working directory for file operations and command execution to prevent unintended changes to the main project.
… propose_change tool documentation: Update system_prompt_builder.ts to clarify the critical workflow for code changes, emphasizing the mandatory sequence of proposing, applying, and verifying changes. Enhance the propose_change_tool.ts description to stress that changes are only stored in memory until applied, ensuring users understand the importance of using apply_changes for file creation and modification.
…lder.ts to clarify the workflow for code changes, emphasizing the distinction between exploration and execution. Enhance propose_change_tool.ts to specify its use for exploratory scenarios only, reinforcing the necessity of apply_changes for actual file creation and modification.
…s for subagents on applying changes to ensure correct workflow. Emphasize the critical sequence of proposing and applying changes to guarantee files are written to disk before executing commands.
…ctionality for proposed changes in the Copilot agent. This update adds the ability to automatically write changes to disk when using the propose_change tool with the auto_apply flag, enhancing the workflow for file creation and modification. The system prompt and related documentation have been updated to reflect this new feature, clarifying the process for users.
…nctionality: Introduce user prompt handling for auto-apply detection and improve command execution. This update adds the ability to automatically detect if a user prompt is an order or a question, enabling the `propose_change` tool to auto-apply changes accordingly. Additionally, the `execute_command` tool now automatically prepends the `cd` command to ensure correct execution within the specified working directory. Documentation has been updated to reflect these changes and clarify the workflow for users.
…irectory from 'copilot_dummy' to the current directory across multiple files. This change enhances flexibility and aligns the documentation with the new behavior, ensuring users operate within their intended context. Adjustments made in CLI options, agent initialization, command execution, and system prompts to reflect this update.
…ubagent usage. The default behavior for using subagents is now enabled, with an additional option to disable them using `--no-use-subagents`. This change clarifies the command-line interface and enhances user flexibility in managing parallel processing.
…default to using subagents for improved performance. Adjustments made to the system prompt and propose_change tool to clarify the workflow for code changes. Enhanced tests to verify default behaviors and ensure correct handling of user prompts for auto-apply functionality. Documentation updated to reflect these changes and provide clearer guidance for users.
…ization by resolving relative paths based on the working directory. This update ensures correct handling of file paths, improving the reliability of the auto-apply feature when working with different directory structures.
…nctionality by introducing intent classification for user prompts. This update allows the agent to determine whether changes should be applied based on the user's intent, improving the auto-apply feature. Additionally, the propose_change tool has been updated to handle various change types and includes new options for managing TODO items. Documentation has been revised to reflect these enhancements and clarify the workflow for users.
…ager and related tools to utilize the new TodoStatus enum for improved clarity and consistency in managing TODO items. Adjustments made to the create and update methods to ensure proper status handling. Documentation and examples have been revised to reflect these changes, enhancing the overall user experience and understanding of the TODO management workflow.
… across multiple modules to streamline output and improve readability.
…proach for handling prompts, separating analysis and execution. Phase 1 allows subagents to analyze files in read-only mode and propose changes without applying them. Phase 2 executes the proposed changes sequentially, improving conflict management. Additionally, new ChangePlan interface added to structure proposed changes. Documentation updated to reflect these enhancements.
…/github.com/landamessenger/git-board-flow into feature/279-introduce-the-new-copilot-agent
…/github.com/landamessenger/git-board-flow into feature/279-introduce-the-new-copilot-agent
…nCode parameters in action.yml, updating descriptions and defaults for improved clarity. Update README to reflect the integration of OpenCode for AI operations, emphasizing support for multiple LLM providers. Remove obsolete CLI files and definitions to streamline the codebase.
…tion.yml for automatic server management. Update documentation to reflect new configuration options and improve clarity on AI features. Remove outdated documents related to agent SDK comparisons and examples to streamline the codebase.
…action.yml and update documentation to reflect the changes. Eliminate references to AI cache actions in README and other files, streamlining the codebase and focusing on OpenCode functionalities. Clean up unused session files and adjust related types and interfaces accordingly.
…w linting scripts in package.json. Update README to include linting instructions and configuration details. Refactor variable declarations across multiple files for consistency, changing `let` to `const` where applicable. Remove obsolete codebase analysis schema and related types to streamline the codebase.
…tured imports for consistency across tools. Update execute method signatures to use `Record<string, unknown>` instead of `Record<string, any>` for improved type safety. Enhance ESLint configuration for test files to allow `require()` imports for better mock handling.
…or detecting potential errors and recommending implementation steps in the CLI. Introduce new actions and update the AI repository to support these functionalities. Enhance the SingleAction model to include new action types and integrate them into the use case flow for improved issue management.
… identify when a branch is being renamed and conditionally update the parent branch configuration. This enhancement improves the handling of branch switches and ensures accurate branch management during operations.
… for pushed issues: Introduce logic to identify branch renaming in the BranchRepository, conditionally updating the parent branch configuration. Additionally, add functionality to comment on issues during push events when a valid issue number is present, improving interaction with issue tracking.
efraespada
force-pushed
the
feature/279-introduce-the-new-copilot-agent
branch
from
February 9, 2026 03:04
5794c71 to
c0c70e1
Compare
Contributor
✨ Feature Actions
🚀 Happy coding! |
…he structure of the summary message to improve clarity and presentation. Enhance the formatting of sections for remaining tasks and reasoning, incorporating headings and emojis for better user engagement.
…ne the summary message structure by removing unnecessary line breaks and adding headings with emojis for improved clarity and user engagement.
… repository: Introduce a JSON schema for translation responses, ensuring required fields and optional reasoning for failures. Update the translation logic to utilize the new schema, enhancing error handling and response clarity in comment translations.
efraespada
force-pushed
the
feature/279-introduce-the-new-copilot-agent
branch
from
February 9, 2026 03:27
d6d9269 to
b071e6f
Compare
Contributor
✨ Feature Actions
🚀 Happy coding! |
…date the ThinkUseCase class to utilize AiRepository for AI interactions instead of FileRepository. Modify the invoke method to enhance comment handling and context retrieval, improving the overall functionality and clarity of the AI response process. Remove the ReasoningVisualizer class and its related tests to streamline the codebase.
efraespada
force-pushed
the
feature/279-introduce-the-new-copilot-agent
branch
from
February 9, 2026 03:46
4ff119d to
b7279b4
Compare
Contributor
✨ Feature Actions
🚀 Happy coding! |
… heading level for the reasoning section from ### to ## to enhance clarity and consistency in the summary message structure.
…ls: Modify the .gitignore file to ensure package-lock.json is tracked in version control, enhancing consistency for npm installations.
…on, .mcp.json.example, and related test server files to clean up the project structure and eliminate unused resources. Additionally, remove unnecessary .DS_Store files and related .gitignore entries for a cleaner repository.
efraespada
force-pushed
the
feature/279-introduce-the-new-copilot-agent
branch
from
February 9, 2026 03:55
0a36c48 to
ce10e68
Compare
Contributor
✨ Feature Actions
🚀 Happy coding! |
Contributor
✨ Feature Actions
🚀 Happy coding! |
1 task
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.



📌 Summary
This PR introduces a new Copilot agent system powered by OpenCode to enable intelligent code analysis, progress tracking, error detection, and PR description generation. The new agent integrates seamlessly with the existing Git Board Flow workflow, providing an "interactive assistant" experience within CI workflows.
Key goals:
🎯 Related Issues / Tickets
🧩 Scope of Changes
Added:
src/agent/reasoning/copilot/,src/agent/reasoning/intent_classifier/)opencode-start-serverinput)think,copilot,detect-errors,recommend-stepsdocs/integration-testing-agent-workflows.md).cursor/rules/project-context.mdc).github/pull_request_template.md)CONTRIBUTING.md)eslint.config.mjs)Updated:
opencode-server-url,opencode-model,opencode-start-server)ask(),askAgent())check_progress_use_caseto use OpenCode Plan agentthink_use_caserefactored for OpenCode integrationRemoved:
.agent-sessions/)docs/THINK_AS_CLAUDE_USECASE.md,docs/ai-container-system.md, etc.)Refactored:
🛠️ Technical Details
opencode_server.tsutility to start/stop OpenCode server within GitHub Actions jobs whenopencode-start-server: true🔍 How to Test
Commit workflow (progress detection):
feature/123-title)25%,50%) are applied to the issuePull request workflow (AI description):
ai-pull-request-description: truein the workflowCLI commands:
With OpenCode server:
opencode-start-server: trueand provideOPENAI_API_KEYorANTHROPIC_API_KEY🧪 Test Coverage
check_progress_use_case,detect_errors_use_case,recommend_steps_use_case, etc.)content_utils,file_utils,label_utils, etc.)validate_agent_workflows.ymlopenrouter-api-key,openrouter-model,openrouter-provider-*opencode-server-url,opencode-model, andopencode-start-serverinsteadsupabase-urlandsupabase-keyare no longer used.mcp.jsonconfiguration files are no longer supported🚀 Deployment Notes
SUPABASE_URL,SUPABASE_KEY,OPENROUTER_API_KEYOPENCODE_SERVER_URL,OPENCODE_MODEL(or useopencode-start-server: truewith provider keys)Details:
OPENAI_API_KEY,ANTHROPIC_API_KEY) as secrets when usingopencode-start-server: true🔒 Security Considerations
📈 Performance Impact
opencode-start-server: true📝 Notes for Reviewers
src/data/repository/ai_repository.tssrc/agent/reasoning/intent_classifier/build/directory changes are auto-generated fromncccompilation✅ Checklist
📚 Additional Context
docs/integration-testing-agent-workflows.mdfor validation checklist