Skip to content

Conversation

@moe1214
Copy link

@moe1214 moe1214 commented Jan 27, 2026

Summary

  • Add Trae to supported tools with skills directory .trae.
  • Trae supports proactive command invocation via skill names (no separate adapter needed).
  • Document Trae’s command usage with skill-name commands (e.g., /openspec-new-change, /openspec-apply-change).

Changes

  • src/core/config.ts: register Trae in AI_TOOLS.
  • docs/supported-tools.md: clarify Trae uses skill-based command invocation and install paths.
  • docs/commands.md: add Trae syntax row and troubleshooting hint for .trae/skills.

Behavior

  • openspec init --tools trae generates .trae/skills/ (commands are invoked via skill names in Trae).
  • Init message remains unchanged; no command adapter is required because skills are directly invocable as commands in Trae.

Verification

  • Built and ran init locally.
  • Confirmed .trae/skills/openspec-* present and callable via skill-name commands.
  • Docs reflect Trae command syntax (/openspec-*) consistently.

@moe1214 moe1214 requested a review from TabishB as a code owner January 27, 2026 09:39
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jan 27, 2026

📝 Walkthrough

Walkthrough

The changes introduce support for a new AI tool named Trae by adding it to documentation and configuration. Three files are updated: command reference documentation lists Trae's command syntax, supported tools documentation registers Trae as an available tool, and the configuration file adds a Trae entry to the AI_TOOLS array.

Changes

Cohort / File(s) Summary
Documentation Updates
docs/commands.md, docs/supported-tools.md
Added Trae to command reference table with syntax /openspec-new-change and /openspec-apply-change; registered Trae as a supported tool in both the Tool Directory Reference table and Available tool IDs list
Configuration
src/core/config.ts
Added Trae entry to AI_TOOLS array with tool identifier 'trae', marked as available, with successLabel 'Trae' and skillsDir '.trae'

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Poem

🐰 A toolbox grows with Trae in sight,
New commands shine, the config's right,
With /openspec spells so bright,
We hop through docs with pure delight! ✨

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The PR title 'feat: Trae skills with proactive command invocation + docs alignment' accurately captures the main changes: adding Trae support with skill-based command invocation and updating documentation to reflect this addition.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@greptile-apps
Copy link

greptile-apps bot commented Jan 27, 2026

Greptile Overview

Greptile Summary

This PR adds support for Trae as a skill-only AI tool. Trae is configured to generate skills in .trae/skills/ but does not have a command adapter, meaning users invoke skills directly via skill names (e.g., /openspec-new-change) rather than through wrapper commands.

Key changes:

  • Added Trae to the AI_TOOLS registry with skillsDir: '.trae'
  • Updated tool directory reference table showing Trae uses .trae/skills/ for both skills and commands (via direct skill invocation)
  • Added Trae syntax row in command reference showing /openspec-new-change, /openspec-apply-change pattern
  • Added trae to available tool IDs list

The implementation follows the existing pattern for tools without command adapters: openspec init --tools trae will create all 10 skill files in .trae/skills/ and skip command generation with message "Commands skipped for: trae (no adapter)".

Confidence Score: 5/5

  • This PR is safe to merge with no issues found
  • The changes are minimal, well-structured, and follow existing patterns. The tool registration matches the established format, documentation accurately reflects skill-only behavior, and the implementation correctly handles tools without command adapters through existing code paths.
  • No files require special attention

Important Files Changed

Filename Overview
src/core/config.ts Added Trae tool configuration to AI_TOOLS array with correct structure
docs/supported-tools.md Added Trae to tool directory reference table and available tool IDs list with skill-only note
docs/commands.md Added Trae command syntax row showing skill-based invocation pattern

Sequence Diagram

sequenceDiagram
    participant User
    participant CLI as openspec init
    participant Config as AI_TOOLS Registry
    participant Init as Tool Setup
    participant FS as File System
    participant Adapter as CommandAdapterRegistry

    User->>CLI: openspec init --tools trae
    CLI->>Config: Lookup 'trae' tool
    Config-->>CLI: {name: 'Trae', skillsDir: '.trae'}
    CLI->>Init: Generate skills & commands
    
    Init->>FS: Create .trae/skills/openspec-new-change/SKILL.md
    Init->>FS: Create .trae/skills/openspec-continue-change/SKILL.md
    Init->>FS: Create .trae/skills/openspec-apply-change/SKILL.md
    Init->>FS: Create .trae/skills/... (all 10 skills)
    
    Init->>Adapter: get('trae')
    Adapter-->>Init: undefined (no adapter)
    Note over Init: Commands skipped (skill-only mode)
    
    Init-->>User: ✓ Setup complete for Trae<br/>Skills in .trae/<br/>Commands skipped (no adapter)
    
    Note over User: User invokes skills directly
    User->>User: /openspec-new-change
    Note over User: Trae reads .trae/skills/openspec-new-change/SKILL.md
Loading

@moe1214 moe1214 changed the title feat: add Trae skill-only support and docs updates feat: Trae skills with proactive command invocation + docs alignment Jan 27, 2026
Copy link
Contributor

@TabishB TabishB left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Man that refactor was so worth it, if it makes it this easy to add in new providers! proactive command invocation sounds super cool!

@vibe-kanban-cloud
Copy link

Review Complete

Your review story is ready!

View Story

Comment !reviewfast on this PR to re-generate the story.

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