Skip to content

feat: [SKILL-8] add opencode support#1

Open
Sermilion wants to merge 48 commits intorbatukaev:mainfrom
Sermilion:feat/SKILL-8-opencode-agent-support
Open

feat: [SKILL-8] add opencode support#1
Sermilion wants to merge 48 commits intorbatukaev:mainfrom
Sermilion:feat/SKILL-8-opencode-agent-support

Conversation

@Sermilion
Copy link
Copy Markdown

Summary

Adds OpenCode as a supported agent for SKILL-8 so Skill Bill can install and remove skills there using the same managed flow as the existing agent targets.

  • add OpenCode install and uninstall support, including Skill Bill MCP registration in the OpenCode global config
  • update the user-facing docs and bill-new-skill-all-agents to recognize OpenCode as a supported target
  • extend regression coverage for the new install path and config registration/removal behavior

Feature Flags

N/A

How Has This Been Tested?

Ran the repo validation suite covering installer behavior, skill metadata, and agent config validation.

  1. Run python3 -m unittest discover -s tests
  2. Run npx --yes agnix --strict .
  3. Run python3 scripts/validate_agent_configs.py
  4. Expect all commands to pass

rbatukaev and others added 30 commits March 28, 2026 20:59
…orrectness

Strengthen delegated review guidance and correctness checks
Add tag-driven GitHub release automation, SemVer tag validation, and maintainer release documentation.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Reorganize sections so user-facing content comes first: add tagline,
usage examples, routing diagram. Move architecture and naming details
below the practical sections.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The `claude plugin install` command does not support local directory
installation. Remove the misleading section.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Remove invalid claude plugin install command
Remove invalid claude plugin install command from README
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…ecution

feat: [SKILL-1] make review execution adaptive
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…ases

feat: [SKILL-2] add install-time skill prefixes
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Cherry-pick of PR #25 (5 commits) whose merge commit existed on
GitHub but failed to update the main ref.
Move the monolithic scripts/review_metrics.py (2475 lines) into a
proper Python package at skill_bill/ with 10 domain modules:
constants, db, config, review, triage, learnings, stats, sync,
output, cli.

Skills now call `skill-bill import-review` instead of resolving a
script path. install.sh uses `python3 -m skill_bill` for telemetry
setup. Zero external dependencies, all 71 tests pass.
- Add pyproject.toml with zero dependencies and skill-bill entry point
- Propagate exit code in __main__.py via raise SystemExit(main())
- Remove unused telemetry_enabled variable in learnings_resolve_command
- Replace test compatibility shim with direct skill_bill imports
- Update stale error message referencing old script path
- Add Auto-Triage section to bill-code-review SKILL.md so triage
  decisions are recorded after the agent acts on findings
- Add skill_bill/mcp_server.py with 5 FastMCP tools: import_review,
  triage_findings, resolve_learnings, review_stats, doctor
- Tools wrap existing skill_bill.* modules directly, no logic duplication
- install.sh registers MCP server globally for all selected agents
  (claude, copilot, codex, glm) during installation
- SKILL.md Auto-Import/Auto-Triage use MCP tools directly
- Add .mcp.json for project-level discovery during development
- pyproject.toml adds mcp dependency and skill-bill-mcp entry point
…rmat, and feature-implement flow improvements

- Add bullet output format to specialist review skills for reliable finding parsing
- Remove $insert_id from telemetry batch to prevent PostHog dedup collisions
- Restore telemetry gates in MCP tools; skip DB writes when telemetry disabled
- Fire event for first completed run per session; skip review_finished for delegated sub-reviews
- Uninstall removes ~/.skill-bill state directory and MCP server registrations
- Use TOML config and resolved Python path for MCP server registration
- Update docs for skill-bill CLI and MCP server
- bill-feature-implement: don't pause after completeness audit
- bill-boundary-history: create file if it does not exist
…pressed specialist contract

- Create specialist-contract.md containing only the two sections delegated
  specialists need (~40 lines vs 94 in review-orchestrator.md)
- Add per-specialist diff scoping step to all 5 platform orchestrators so
  non-architecture specialists receive only relevant files
- Add hard inline/delegated threshold (10 files / 400 lines) to eliminate
  non-deterministic execution mode selection
- Update review-delegation.md to reference specialist-contract.md
…tokens

feat: optimize delegated review token usage
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Sermilion and others added 18 commits April 6, 2026 15:26
- Remove inline agent-config validation from Step 6b, delegate to bill-quality-check router
- Remove plan confirmation stop — assessment confirmation is the only gate
- Trim format templates, workflow diagram, and invoked-skill re-explanations
- Make test task conditional on testable logic instead of unconditional MUST
- Skip spec-to-disk and lighten completeness audit for SMALL features
- Add issue key to spec folder naming for traceability
- Generalize issue tracker reference (was Jira-specific)
…lement

refactor: streamline bill-feature-implement skill
…e docs, and add bill-grill-plan skill

Enrich all 47 skill descriptions with concrete trigger phrases for better
agent routing. Extract large reference content (Compose guidelines, feature
guard patterns, feature-implement reference, audit rubrics) into linked
files. Add new bill-grill-plan meta-skill for stress-testing designs.
Trim verbose intro sections in borderline skills.
feat: skill trigger phrases, reference extractions, and bill-grill-plan
Replace boolean telemetry.enabled with telemetry.level supporting three
levels. Anonymous preserves current redacted behavior. Full includes
finding descriptions, file locations, rejection notes, and learning
content for teams that want actionable detail.

Backward compatible: existing enabled:true maps to anonymous,
enabled:false maps to off. Legacy env var still works.
feat: add telemetry levels (off / anonymous / full)
The pr-description skill had instructions to prefer repo-native templates,
but the prominent built-in template caused agents to skip the search.
Restructured to make the search a hard gate: renamed section to
"mandatory", added MUST language, labeled built-in template as fallback,
and added docs/ search path.
…-template

fix: enforce mandatory repo-native PR template search
…ecisions (#34)

New skill records why decisions were made in agent/decisions.md,
complementing history.md which tracks what changed. Integrates with
feature-implement via header-scan to avoid context pollution.
…#35)

Add two new MCP tools (feature_implement_started, feature_implement_finished)
that record telemetry for the feature-implement workflow. Includes DB schema,
validation, payload building with anonymous/full level support, duration
tracking, and idempotent event emission. SKILL.md instructions tell the agent
when to call each tool.
…ent (#36)

Track how useful reading boundary history was during each feature-implement
run, so we can measure whether writing and reading history provides value.
…events (#37)

Switch review_session_id format from rvs-YYYYMMDD-HHMMSS-XXXX to
rvs-<uuid4> for true uniqueness. Add install_id as a filterable
property on all PostHog telemetry events.
* feat: add Copilot custom agent support with sub-agent delegation

Add a Copilot-optimized feature-implement orchestrator that delegates
heavy stages (plan, implement, resolve, quality-check, finalize) to
dedicated custom agents while running code review inline to avoid
Copilot runtime limits.

- Add 5 Copilot custom agent templates in .github/agents/ (bill-plan,
  bill-implement, bill-code-review-resolve, bill-quality-check,
  bill-finalize)
- Add bill-feature-implement-copilot skill that orchestrates the full
  feature pipeline via sub-agent delegation
- Extend installer to install managed custom agents into
  ~/.copilot/agents/ with prefix rewriting and a managed-file marker
- Extend uninstaller to clean up managed Copilot custom agents
- Extend validator to include Copilot agent names in cross-reference
  checks
- Update auto-triage wording across all review skills to call
  triage_findings with empty decisions list for no-findings reviews
- Update README with new skill count, catalog entry, and Copilot
  agent install path
- Add tests for agent template validation, installer/uninstaller
  custom agent handling, and validator e2e fixtures

* feat: add bill-feature-implement-agentic skill for runtime-agnostic subagent delegation

Add a portable feature-implement variant that delegates heavy stages
(plan, implement, review, resolve, quality-check, finalize) to
subagents using each runtime's native mechanism. Each subagent loads
the respective portable skill as its primary rubric, keeping the
orchestrator runtime-agnostic across Claude Code, GLM, and Codex.

Review step documents nested delegation requirement and falls back
to inline on runtimes that don't support nested subagent spawning.

Also fixes uninstall test to expect prefix-rewritten agent filenames.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
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