- You want to understand Cyrus’s internal workflow
- You are debugging unexpected behavior
- You are contributing to or extending Cyrus
What Is a Procedure?
A procedure is a structured sequence of steps Cyrus follows to complete a task. Each procedure is optimized for a specific type of work to ensure:- Predictable behavior
- Consistent quality
- Safe execution
Procedure Structure
Most procedures follow the same high-level structure:- Primary Phase
Core work such as investigation, implementation, or planning - Verification Phase (when applicable)
Testing, validation, or checks - Git Phase (when applicable)
Committing changes and creating pull requests - Summary Phase
Posting results back to Linear
Available Procedures
simple-question
Purpose:Answer questions without modifying code Typical Use Cases:
- Codebase questions
- Clarification requests
- Information lookup
- Reads relevant files
- Gathers context
- Posts an answer in Linear
Linear comment only (no PR)
documentation-edit
Purpose:Update documentation or markdown files Typical Use Cases:
- README updates
- Documentation fixes
- Markdown changes
- Applies documentation edits
- Commits changes
- Opens a pull request
Pull request with documentation changes
full-development
Purpose:Implement code changes with full verification Typical Use Cases:
- New features
- Enhancements
- Refactoring
- Implements changes following existing patterns
- Runs tests and checks
- Opens a pull request
Pull request with verified code changes
debugger-full
Purpose:Systematic bug investigation and fixing Typical Use Cases:
- Bug reports
- Production issues
- Test failures
- Reproduces the issue
- Identifies root cause
- Applies minimal fix
- Adds test coverage
- Verifies behavior
Pull request with fix and tests
orchestrator-full
Purpose:Coordinate large or multi-part work Typical Use Cases:
- Large features
- Complex refactors
- Multi-component changes
- Breaks work into sub-issues
- Coordinates execution
- Verifies completion
Multiple related issues and pull requests
plan-mode
Purpose:Clarify requirements or produce an implementation plan Typical Use Cases:
- Vague requests
- Ambiguous scope
- Multiple possible approaches
- Analyzes the request
- Produces clarifying questions or a plan
Linear comment with questions or plan (no PR)
How Procedures Are Selected
Procedure selection follows this priority:- Explicit intent labels (e.g., Bug, Feature, Orchestrator)
- Issue content classification
- Safe defaults
Important Notes
- Procedures may evolve over time
- Names and steps are internal implementation details
- Rely on labels and intent, not procedure names
- Issue labels
- Issue clarity
- Routing configuration

