logo
0
0
WeChat Login

hermes-code

hermes-code is a local Go CLI and daemon for orchestrating AI coding work from repository-native issues.

Current provider support:

  • cnb

Project Layout

. ├── cmd/ # Cobra command tree ├── internal/ # Non-exported application packages │ ├── config/ # Config loading and validation │ ├── daemon/ # Long-running monitoring loop │ ├── lifecycle/ # Issue, branch, and PR lifecycle operations │ ├── model/ # Shared domain models │ ├── provider/ # Git provider abstraction and implementations │ ├── runtime/ # AI runtime adapters │ ├── scheduler/ # Eligibility, queueing, and execution decisions │ ├── state/ # Local persistent orchestration state │ ├── trigger/ # Manual, polling, and webhook trigger inputs │ └── workspace/ # Git worktree and repository cache management ├── docs/ # Product and engineering docs ├── main.go # CLI entrypoint └── Makefile # Common dev commands

Commands

  • hermes-code init
  • hermes-code status
  • hermes-code daemon start
  • hermes-code daemon stop
  • hermes-code repo discover --provider cnb
  • hermes-code repo list
  • hermes-code repo add <provider/repo>
  • hermes-code repo runtime set <repo-id> <runtime>
  • hermes-code repo runtime get <repo-id>
  • hermes-code repo start <repo-id>
  • hermes-code repo stop <repo-id>
  • hermes-code runtime detect
  • hermes-code runtime list
  • hermes-code issue run <repo>#<number>
  • hermes-code issue list-pending
  • hermes-code issue approve <repo>#<number>
  • hermes-code issue reject <repo>#<number>

Runtime Discovery

Examples:

hermes-code runtime detect hermes-code runtime list hermes-code repo runtime set hermes-code codex hermes-code repo runtime get hermes-code

CNB Repository Discovery

repo discover uses the CNB GetRepos API and handles provider-side pagination automatically.

Examples:

hermes-code repo discover --provider cnb hermes-code repo discover --provider cnb --limit 200 hermes-code repo discover --provider cnb --all hermes-code repo discover --provider cnb --search hermes hermes-code repo discover --provider cnb --search hermes --limit 20

Behavior:

  • default limit is 100
  • --all fetches all pages
  • --search is passed to CNB as a server-side repository filter
  • --all and --limit cannot be used together

Quick Start

Initialize config:

export HERMES_CODE_CNB_TOKEN=your-token hermes-code init --provider cnb --base-url https://api.cnb.cool --token-env HERMES_CODE_CNB_TOKEN

Discover and register a repository:

hermes-code repo discover --provider cnb --search hermes hermes-code repo add cnb/org/hermes-code --id hermes-code --default-branch main hermes-code repo start hermes-code

Development

make test make build

About

No description, topics, or website provided.
Language
Go99.9%
Makefile0.1%