colony-agent skeleton: worker, dream, birth, status commands (stubs)

Phase 2 crate scaffolded with clap CLI. All commands are stubs
that exit with "not yet implemented". Ready for implementation.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-03-29 22:48:50 +02:00
parent 321adfb9e9
commit dd536c0949
3 changed files with 79 additions and 0 deletions

View File

@@ -0,0 +1,49 @@
use clap::{Parser, Subcommand};
#[derive(Parser)]
#[command(name = "colony-agent", about = "Ape Colony Agent Runtime — autonomous agent lifecycle")]
struct Cli {
#[command(subcommand)]
command: Commands,
}
#[derive(Subcommand)]
enum Commands {
/// Start the agent worker loop (pulse + react)
Worker,
/// Run one dream cycle (memory consolidation)
Dream,
/// Create a new agent on this VM
Birth {
name: String,
#[arg(long)]
instruction: String,
},
/// Show agent status
Status,
}
#[tokio::main]
async fn main() {
let cli = Cli::parse();
match cli.command {
Commands::Worker => {
eprintln!("colony-agent: worker not yet implemented");
std::process::exit(1);
}
Commands::Dream => {
eprintln!("colony-agent: dream not yet implemented");
std::process::exit(1);
}
Commands::Birth { name, instruction } => {
eprintln!("colony-agent: birth '{}' with instruction: {}", name, instruction);
eprintln!("not yet implemented");
std::process::exit(1);
}
Commands::Status => {
eprintln!("colony-agent: status not yet implemented");
std::process::exit(1);
}
}
}