@onezone/terminal
v0.0.4
Published
Onezone Terminal CLI
Readme
@onezone/terminal
The OneZone terminal CLI. Built with oclif, it registers the local machine as a terminal with the OneZone server, listens for task assignments over Socket.io, and dispatches AI agents (Claude Code, GitHub Copilot CLI) to execute those tasks.
Installation
# From repo root
pnpm install
pnpm buildOr install from npm:
npm install -g @onezone/terminal
# or run without installing
npx @onezone/terminal listenOr link globally for local development:
cd apps/terminal
npm linkPublishing
Publish @onezone/shared first, then this package:
# From repo root
pnpm build
npm login
pnpm publish --filter @onezone/shared
pnpm publish --filter @onezone/terminalUsage
onezone-terminal listen
Registers this machine as a terminal and continuously listens for incoming task assignments.
onezone-terminal listen
onezone-terminal listen --name my-dev-box
onezone-terminal listen --server http://my-server:5026 --name ci-runnerFlags
| Flag | Default | Description |
|---|---|---|
| --server | http://localhost:5026 | OneZone server URL |
| --name | machine hostname | Unique name for this terminal |
Task commands
Manage tasks from the CLI:
onezone-terminal task create # Create a new task
onezone-terminal task list # List tasks
onezone-terminal task view # View task details
onezone-terminal task move # Move task to a different kanban column
onezone-terminal task delete # Delete a taskColumn commands
onezone-terminal column # Manage kanban columnsTerminal commands
onezone-terminal terminals list # List all registered terminalsAgents
When a task is assigned, the terminal selects the right agent runner based on the task's agent tag:
| Agent tag | Runner |
|---|---|
| claude-code | Claude Code CLI |
| copilot-cli | GitHub Copilot CLI |
Agent processes are managed by src/agents/ and supervised for exit codes and output streaming.
Development
# Watch mode (TypeScript recompile on change)
pnpm dev
# Type-check only
pnpm typecheckDev mode uses bin/dev.js which loads via ts-node/esm so no separate build step is needed.
Build
pnpm build # tsc + copy static assets + oclif manifestOutput lands in dist/.
