@kaiba-cloud/orbital 0.0.1 → 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,130 @@
1
+ # Orbital
2
+
3
+ Orbital runs teams of agents on your machine. A team has a lead and members. You give the team a mission, and you watch it live in your terminal or in Claude Code.
4
+
5
+ ## Install
6
+
7
+ 1. Install the CLI. It needs Node 22.18 or later and Claude Code.
8
+
9
+ ```bash
10
+ npm i -g @kaiba-cloud/orbital
11
+ ```
12
+
13
+ 2. In your repository, connect Claude Code. This writes `.claude/orbital.yaml` and the Claude Code mod.
14
+
15
+ ```bash
16
+ orbital install claude
17
+ ```
18
+
19
+ 3. In Claude Code, run `/reload-plugins`, then `/orbital` to open the pane.
20
+
21
+ ## Skills
22
+
23
+ - The orbital-team skill comes with the mod. It teaches Claude to work with teams and missions.
24
+ - To build a plugin, install the plugin builder skill. Add `--global` to install it for every project.
25
+
26
+ ```bash
27
+ orbital skill install orbital-plugin-builder
28
+ ```
29
+
30
+ ## The harness folder
31
+
32
+ Orbital reads the harness folders of a project: `.claude`, `.codex`, and the folders that a harness plugin adds.
33
+ Each harness folder holds these files for orbital:
34
+
35
+ - `orbital.yaml` holds the keys of the node, such as `plugins:`, `listen:` and `folders:`.
36
+ - `agents/<name>.md` is an agent.
37
+ - `teams/<team>/CHARTER.md` is a team.
38
+ - `policies/<name>.json` is a policy.
39
+ - `missions/<id>/MISSION.md` is a mission.
40
+
41
+ An agent turn runs in a sandbox.
42
+ The sandbox makes the `agents`, `teams`, `policies` and `skills` folders of each harness folder read-only.
43
+ Every other file of the project is a normal project file that the agent can write.
44
+ By default, an agent writes its memory to `memory/<agent>`, its plans to `plans/<agent>` and its session notes to `sessions/<agent>/<session>` in the harness folder.
45
+ The `folders:` key of `orbital.yaml` changes these places.
46
+
47
+ ## Set up a team
48
+
49
+ Paste this prompt into Claude Code in your repository:
50
+
51
+ > Set up an orbital team for this repo. Read the agents in `.claude/agents/`. If there are none, create a lead agent and one worker agent that fit this project. Then write `.claude/teams/<team>/CHARTER.md` with `apiVersion: orbital/v1alpha1`, the team name, a one-line objective, the lead, and the members, each with `harness: claude`. The lead hands work to the members and never does the work itself. Run `orbital check` and fix every problem it reports. Then show me the charter.
52
+
53
+ ## Run a mission
54
+
55
+ 1. Check that the team and its agents load.
56
+
57
+ ```bash
58
+ orbital check
59
+ ```
60
+
61
+ 2. Start the node with the live view.
62
+
63
+ ```bash
64
+ orbital up
65
+ ```
66
+
67
+ To run only some teams, name them. Add `-d` to run in the background, and stop with `orbital down`.
68
+
69
+ ```bash
70
+ orbital up build
71
+ orbital up build review
72
+ ```
73
+
74
+ Teams load live. A node that you start with no team names serves every team of the project, and it watches the `teams` and `agents` folders of each harness folder (`.claude`, `.codex` and so on).
75
+ A new team, a changed charter and a removed team take effect in a few seconds, with no restart. The view, `orbital status`, `orbital mission new` and the pane of Claude Code show the change at once.
76
+ A node that you start with team names keeps only those teams, and it ignores a new team. A named team that changes or leaves still refreshes.
77
+ A change that fails `orbital check` is not loaded. The node keeps the last good version of the team, and the view shows the problem on the row of the team.
78
+ A team or a member that you remove keeps running until its active mission ends, and the view says so on the row of the team.
79
+
80
+ 3. Write a mission, then start it.
81
+
82
+ ```bash
83
+ orbital mission new <team> <id> --intent "…" --end-state "…" --limits "…"
84
+ orbital mission start <id>
85
+ ```
86
+
87
+ 4. In Claude Code, run `/orbital join <id>` to follow the mission, and `/orbital say <message>` to talk to the lead.
88
+
89
+ ## Keep it running
90
+
91
+ Each node runs in the background under a supervisor. Closing the view (`q`, Ctrl+C or a closed terminal) stops no node. Only `orbital down` stops the nodes.
92
+
93
+ - If a node crashes, its supervisor starts it again and the view says why. A mission that was active comes back paused. Resume it with `orbital mission resume <id>`.
94
+ - A second `orbital up` shows the nodes that run. `orbital up --new` starts a separate node for a separate run, such as `<node>-2`.
95
+ - To start the nodes at each login, install the login service. It uses launchd on macOS and systemd on Linux, and it needs no sudo.
96
+
97
+ ```bash
98
+ orbital service install
99
+ orbital service status
100
+ orbital service uninstall
101
+ ```
102
+
103
+ ## Browser
104
+
105
+ Each agent session that starts its own chrome-devtools server makes Chrome ask you to allow remote debugging again. The shared browser holds one connection to your Chrome, so you allow it once.
106
+
107
+ - Sessions that orbital runs on `claude` and on `codex` use the shared browser by themselves. Each session gets its own pages.
108
+ - A session on `claude` or `codex` gets the shared browser in place of each chrome-devtools server of its config. Your config files stay as they are.
109
+ - The `pi` harness has no browser tools. Pi has no MCP client for them yet.
110
+ - A browser call that Chrome does not answer fails after 60 seconds with a clear error. It does not hang.
111
+ - To let your own Claude Code and Codex sessions share the connection, run this once, then start a new session. Install changes the chrome-devtools entries in `~/.claude.json` and in `config.toml` of your Codex home (`CODEX_HOME`, else `~/.codex`). It backs up the old entries. `--revert` restores them.
112
+
113
+ ```bash
114
+ orbital browser install
115
+ orbital browser status
116
+ orbital browser install --revert
117
+ ```
118
+
119
+ ## Commands
120
+
121
+ | Command | What it does |
122
+ |---|---|
123
+ | `orbital up` | Run the nodes of this project with the live view |
124
+ | `orbital up <team> [<team>…]` | Run only the nodes of the named teams |
125
+ | `orbital mission list` | List the missions and their state |
126
+ | `orbital mission show <id>` | Show a mission: brief, state, result and history |
127
+ | `orbital mission say <id> "<message>"` | Talk to the lead of a mission |
128
+ | `orbital mission pause <id>` / `resume <id>` | Pause or resume a mission |
129
+ | `orbital telemetry watch` | Print the live event stream |
130
+ | `orbital describe` | List every command |