Skills
Skills are reusable procedures that agents load to perform specific tasks. They provide structured approaches and consistent behavior across sessions.
Available Skills
| Skill | Used By | Purpose |
|---|---|---|
approach-evaluation | coder, orchestration | Evaluate implementation alternatives before coding |
code-review | reviewer | Structured code review with verdicts |
code-validation | orchestration | Type check, lint, and test validation |
test-generation | test-writer | Framework-aware test writing |
systematic-debugging | debugger | Root cause analysis methodology |
researching-topics | researcher | Multi-source documentation research |
brainstorming | plan | Strategic planning and approach evaluation |
docs-generator | docs-generator | Generate /docs for Notion sync |
README-generator | readme-generator | Generate project README |
directives-advisor | orchestration | Help configure directives |
system-discovery | orchestration | Discover project tooling and architecture |
project-status | orchestration | Check Era governance and git status |
hosted-apps | orchestration | Deploy apps to *.era.computer |
Implementation Pipeline Skills
Approach Evaluation
Evaluates 2-3 implementation alternatives before coding non-trivial features.
When used: Before implementing features that touch 3+ files or have multiple valid approaches.
Output:
- 2-3 approaches with descriptions
- Evaluation on: complexity, risk, alignment, testability
- Selected approach with rationale
Skipped when:
- Change is < 20 lines or single file
- User specified the exact approach
- Bug fix with identified root cause
Code Review
Produces structured APPROVE/REJECT verdicts with findings.
Review dimensions:
- Correctness — logic, edge cases, error handling
- Style — naming, formatting, patterns
- Security — secrets, injection, validation
- Tests — coverage, assertions, independence
- Architecture — layers, separation, abstractions
Finding severities:
- BLOCKER — Must fix. Any blocker = REJECT.
- WARNING — Should fix. 3+ warnings = REJECT.
- SUGGESTION — Nice to have. Never causes rejection.
Code Validation
The "Iron Law" — no code returns without validation first.
Phases:
- Discovery — Detect project tooling (test framework, linter, type checker)
- Validate — Run type check → lint → targeted tests → full test suite
- Fix — Address failures (max 3 attempts)
- Report — Structured pass/fail output
Supported frameworks:
- Jest, Vitest, Playwright, Mocha (JavaScript/TypeScript)
- pytest, unittest (Python)
- cargo test (Rust)
- go test (Go)
Test Generation
Framework-aware test writing that matches existing project patterns.
Process:
- Detect test framework from existing tests
- Analyze existing test patterns (describe/it structure, mocking, assertions)
- Plan coverage (happy path, errors, edge cases)
- Generate tests matching project style
- Run tests to verify they pass
Principles:
- Test behavior, not implementation
- One behavior per test
- Minimal mocking (mock at boundaries only)
- Independent tests (no shared state)
Using Skills
Agents load skills automatically based on their instructions. The orchestration agent coordinates which agents (and thus which skills) are invoked based on the task.
Skills are deployed to .era/resources/opencode/skill/ during era-code init and can be customized per project.
Slash Commands
Several slash commands invoke skills directly:
| Command | Skill / Agent | Purpose |
|---|---|---|
/era-validate | code-validation | Run validation on project |
/era-debug | systematic-debugging | Start debugging session |
/era-research | researching-topics | Research a topic |
/era-plan | brainstorming | Strategic planning |
/era-readme | README-generator | Generate README |
/decision-log | orchestration | Log decision + risk assessment to Google Sheets |
/linear-create | plan | Create Linear projects or issues from context |
/era-deploy | orchestration | Deploy to *.tools.era.computer |