Skip to content

Commit 1202523

Browse files
rsnodgrassSage-Ox
andauthored
release: prep v0.10.0 — README + VHS demo refresh (#655)
Co-Authored-By: SageOx <ox@sageox.ai>
1 parent d057a24 commit 1202523

10 files changed

Lines changed: 300 additions & 275 deletions

File tree

.claude-plugin/marketplace.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
"name": "ox",
1313
"source": "./claude-plugin",
1414
"description": "Team context, session recording, and AI coworker coordination for collaborative development",
15-
"version": "0.9.1"
15+
"version": "0.10.0"
1616
}
1717
]
1818
}

README.md

Lines changed: 93 additions & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,64 @@
11
<!-- doc-audience: human -->
2-
# SageOx CLI (ox)
2+
# SageOx CLI (`ox`)
33

44
[![docs: ai-human-docs](https://raw.githubusercontent.com/rsnodgrass/ai-human-docs/main/badges/ai-human-docs.svg)](https://github.com/rsnodgrass/ai-human-docs)
55

6-
SageOx is agentic context infrastructure — we call it the hivemind. It makes architectural and product intent persistent and automatically available across humans and agents.
6+
**The hivemind for human–agent teams.** SageOx makes your team's decisions,
7+
conventions, and architectural intent persistent — and loads them automatically
8+
into every coding session, human or AI.
79

8-
This initial version is intended for AI-native teams — teams that build products almost exclusively through prompts.
10+
Today, that context lives in scattered places: a meeting nobody recorded, a Slack
11+
thread three weeks deep, the head of whoever wrote the code. So humans repeat
12+
themselves and AI coworkers drift — rebuilding the same lost context every
13+
session. `ox` closes that gap. Decisions become shared memory; every session
14+
starts with the full picture instead of from zero.
915

10-
Sessions, ledgers, and team knowledge ensure your AI coworkers understand your project's patterns, security requirements, and architectural decisions from the start, making agentic engineering multiplayer by default.
16+
**Ask your coding agent what the team already figured out — even if it happened
17+
in a different agent, on a different machine, days ago.**
1118

12-
## Demo
19+
![One ox session: cross-agent recall, murmurs, and a team-enriched plan](demo/demo.gif)
1320

14-
![SageOx CLI Demo](demo/demo.gif)
21+
One session, every moment that matters: it **recalls** a teammate's Codex work
22+
and your own prior Claude Code session, **coordinates** by murmuring and noticing
23+
a teammate already in the same files, and proposes a plan **enriched** with
24+
collisions, prior art, and who owns the area. All of it because every session is
25+
recorded to a shared, queryable **Ledger**.
1526

16-
## Install the CLI
27+
## The loop
28+
29+
```mermaid
30+
flowchart LR
31+
REC["Record at sageox.ai<br/>discussions, decisions"]
32+
KB["Knowledge Bubbles<br/>team context plus ledger"]
33+
PRIME["ox agent prime<br/>loads context"]
34+
WORK["AI Coworker session"]
35+
CAP["Session captured<br/>to the Ledger"]
36+
REC --> KB --> PRIME --> WORK --> CAP --> KB
37+
```
38+
39+
Record a discussion once. It's distilled into **Knowledge Bubbles** — your team's
40+
shared memory. The next time anyone primes a coding session, that context flows
41+
in. The session itself is captured back to the **Ledger**, so the next coworker
42+
inherits it too. Context compounds instead of evaporating.
43+
44+
## Works with your coding agent
45+
46+
`ox` is agent-agnostic. The same recorded context is primed into, and queryable
47+
from, whichever agent your team uses.
48+
49+
| Agent | Prime context | Record sessions | Murmur (coordinate) | Query past work |
50+
|---|:---:|:---:|:---:|:---:|
51+
| **Claude Code** |||||
52+
| **Codex CLI** |||||
53+
| **Cursor** |||||
54+
| **Windsurf / Cline / Copilot / Aider** |||||
55+
56+
✅ supported · ➖ planned. Claude Code is the primary, most-tested target.
57+
58+
<sub>Agent names are trademarks of their respective owners; `ox` is compatible
59+
with, not affiliated with, them.</sub>
60+
61+
## Install
1762

1863
**Quick install (macOS / Linux / FreeBSD):**
1964

@@ -28,91 +73,64 @@ git clone https://github.com/sageox/ox.git && cd ox
2873
make build && make install
2974
```
3075

31-
## Set up ox in your repo
32-
33-
```bash
34-
# cd into your code repo (e.g. ~/src/my-project)
35-
cd ~/src/my-project
36-
ox login
37-
38-
# one time setup, done ONCE per repo
39-
ox init
40-
# commit the changes in your repo, e.g. git commit -a -m 'SageOx init'
41-
42-
ox doctor
43-
# ox doctor --fix may be needed in the alpha stage
44-
ox status
45-
# will give you the location of the team context and ledger repos
46-
```
47-
48-
## 👥 Go to [sageox.ai](https://sageox.ai) - Setup team
49-
50-
Go into your newly created team in SageOx and invite your coworkers by copying the invite in the upper right, displayed in Team Overview.
51-
52-
<!-- TODO: add screenshot of team invite UI -->
53-
54-
## 🎙️ Record discussions
55-
56-
Team discussions impacting the product are captured and transcribed in the app and the context is automatically available to Claude.
57-
58-
<!-- TODO: add screenshot of transcription UI -->
76+
Verify with `ox version`.
5977

60-
## 🤖 Capture sessions
61-
62-
`ox-session` capture the conversation between a developer and Claude so the decisions, patterns, and reasoning become available to the rest of the team.
78+
## Quickstart
6379

6480
```bash
65-
pwd
66-
/home/me/src/my-project
67-
claude
68-
/ox-session-start
69-
<implement fizz buzz>
70-
/ox-session-stop
71-
```
81+
cd ~/src/my-project # your code repo
82+
ox login # authenticate with sageox.ai
7283

73-
<!-- TODO: add screenshot of session viewer -->
84+
ox init # one-time per repo: creates .sageox/
85+
git add .sageox/ && git commit -m "initialize SageOx"
7486

75-
## 🚀 Just Ask
87+
ox doctor # diagnose (ox doctor --fix auto-repairs)
88+
ox status # setup, sync state, and your Knowledge Bubbles
89+
```
7690

77-
Start your AI coworker in your repo and just ask:
91+
That's the whole setup. From here, **session capture is automatic** — when an AI
92+
coworker runs `ox agent prime` at the start of a session, team context loads in
93+
and the session is recorded to the Ledger when it ends. No manual start/stop
94+
ritual.
7895

79-
- *"What decisions were made in the last coding session on this project?"*
80-
- *"Create a plan of work based on the SageOx team discussions from today."*
81-
- *"Look at my team's SageOx coding sessions from this week and teach me a really effective prompt that was used."*
96+
Then just ask your AI coworker things it couldn't have known on its own:
8297

83-
## ⚙️ How it works
98+
- *"What did we decide about the daemon design, and who worked on it?"*
99+
- *"Draft a plan from this week's SageOx team discussions."*
100+
- *"Show me an effective prompt a teammate used on this repo recently."*
84101

85-
1. **ox init** creates a `.sageox/` directory with shared team context for your project
86-
2. **ox integrate** sets up hooks so your AI coworker automatically loads context at session start
87-
3. Your AI coworker receives team context, security conventions, and architectural patterns
88-
4. Coworkers (human and AI) share context through ledgers and team knowledge
102+
## What you get
89103

90-
### SageOx in Practice
104+
| Capability | Command | Learn more |
105+
|---|---|---|
106+
| Team context + repo memory as **Knowledge Bubbles** | `ox status`, `ox kb list` | [jit-discovery](docs/human/guides/jit-discovery.md) |
107+
| Query past sessions, discussions, and code — across agents and machines | `ox query "..."` | [query](docs/reference/query.mdx) |
108+
| Auto-recorded coworker sessions (**Ledger**) | `ox agent prime`, `ox session list` | [session capture](docs/ai/architecture/session-capture-architecture.md) |
109+
| Real-time coordination signals between coworkers | `ox murmur "..."` ||
110+
| Team-context-enriched implementation plans | `ox plan enrich`, `ox plan render` | [plan](docs/reference/plan) |
111+
| Planning-relevant code insights (hotspots, contention) | `ox code insights` ||
112+
| Load an expert AI coworker into context | `ox coworker load <name>` ||
113+
| Diagnose and auto-fix your setup | `ox doctor --fix` | [doctor](docs/reference/doctor.mdx) |
91114

92-
Here's a real example from [PR #4](https://github.com/sageox/ox/pull/4):
115+
## How it works
93116

94-
```mermaid
95-
flowchart LR
96-
subgraph discuss ["🎙️ Ryan and Ajit Discuss"]
97-
A1["Captured in Team Context"]
98-
end
99-
subgraph implement ["🤖 Ajit Implements"]
100-
B1["Captured in Ledger"]
101-
end
102-
subgraph review ["🚀 Ryan Reviews"]
103-
C1["Code + Session + Transcript"]
104-
end
105-
discuss --> implement --> review
106-
```
117+
`ox init` writes a `.sageox/` directory that ties the repo to your team. From
118+
then on, `ox agent prime` injects team context — conventions, security
119+
requirements, architectural decisions, prior sessions — into each AI coworker
120+
before it writes a line. Coworkers, human and AI, share that context through the
121+
**Team Context** and the per-repo **Ledger**.
107122

108-
Ryan and Ajit discussed the daemon design in a recorded team discussion. Ajit then implemented it with Claude (session captured in the ledger). When Ryan reviewed the PR, he had the full picture — the original discussion audio, the implementation session, and the code.
123+
The payoff is multiplayer by default. When a discussion, an implementation
124+
session, and the resulting code all carry the same shared context, a reviewer
125+
opening the PR has the full story — the original reasoning, the session that
126+
built it, and the diff — without chasing anyone down.
109127

110-
## ⚙️ Configuration
128+
## Configuration
111129

112-
SageOx looks for configuration in:
130+
SageOx reads configuration from, in order:
113131

114132
1. CLI flags (`--verbose`, `--quiet`, `--json`)
115-
2. Environment variables (`OX_*` prefix)
133+
2. Environment variables
116134
3. Config file (`.sageox/config.yaml`)
117135

118136
## Legal

claude-plugin/.claude-plugin/plugin.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "ox",
33
"description": "Team context, session recording, and AI coworker coordination for collaborative development",
4-
"version": "0.9.1",
4+
"version": "0.10.0",
55
"author": {
66
"name": "SageOx",
77
"email": "hi@sageox.ai"

cmd/ox/release_notes.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,24 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10+
## [0.10.0] - 2026-06-10
11+
12+
### Added
13+
14+
- **Cross-agent HTML plans with a human review loop**`ox plan` renders a team-context-enriched plan as a self-contained HTML page for *any* coding agent, not just Claude Code, backed by a catalog of reusable visualizations (timelines, collision maps, sequence diagrams). A new review loop (`ox plan review`) serves the plan for inline human feedback, so a reviewer can shape the approach *before* any code is written — and the feedback is captured back to the ledger.
15+
16+
### Changed
17+
18+
- **Natively aligned Knowledge Bubbles in `ox status`** — the bubble listing now uses a label-column layout with owner and bubble names aligned in their own column, so the section reads as a clean table rather than ragged, variable-width rows.
19+
20+
### Security
21+
22+
- **Adapter integrity, a single redaction chokepoint, and environment + clone hardening (ADR-022)** — installed AI adapters are integrity-verified before use, every redaction path now funnels through one chokepoint that is far harder to bypass, and both environment-variable handling and team-context clones were hardened against credential leakage and untrusted-prompt injection.
23+
24+
### Fixed
25+
26+
- **`ox agent tasks` no longer panics when called with no subcommand** — invoking `tasks` bare previously sliced an empty argument list and crashed; it now guards the slice and prints usage.
27+
1028
## [0.9.1] - 2026-06-08
1129

1230
### Added

demo/README.md

Lines changed: 21 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,20 @@
11
# Demo Recording
22

3+
One tape drives the README GIF, set *inside a coding-agent session* — because the
4+
magic is what the agent can do, not the setup:
5+
6+
- **`demo.tape``demo.gif`** — one continuous session that walks through every
7+
wow moment: automatic session recording, recall of prior work **across agents
8+
(Codex + Claude Code), machines, and teammates**, a WIP murmur out plus a
9+
teammate's conflicting work surfaced in plain language, and a plan **enriched**
10+
with collisions, prior art, and expert routes.
11+
12+
Session capture is **automatic** via `ox agent prime` — there is no manual
13+
`/ox-session-start` ritual. The demo shows the magic, not the internals (no raw
14+
`<system-reminder>` blocks), but the phrasing mirrors real output
15+
(`cmd/ox/agent.go`, `cmd/ox/agent_hook_plan_nudge.go`). Claude and the cloud legs
16+
are mocked in `demo/mock/` for reproducible, offline recording.
17+
318
## Re-recording the Demo
419

520
### Prerequisites
@@ -41,7 +56,7 @@ export DEMO_PASSWORD="your-password"
4156
./demo/setup.sh
4257

4358
# Record the demo
44-
vhs demo/demo.tape
59+
vhs demo/demo.tape # → demo/demo.gif
4560
```
4661

4762
### Options
@@ -65,15 +80,18 @@ HEADLESS=false ./demo/setup.sh
6580
```
6681
demo/
6782
├── setup.sh # Setup script (build, auth, environment)
68-
├── demo.tape # VHS tape for recording
83+
├── demo.tape # VHS tape — one session, every wow moment
6984
├── demo.gif # Output (generated)
85+
├── mock/ # Mock ox + claude for reproducible recording
86+
│ ├── ox # login/init/doctor/status/agent prime
87+
│ └── claude # the one-session agent demo
7088
├── .sops.yaml # SOPS encryption config
7189
├── credentials.sops.yaml # Encrypted credentials (not in git)
7290
├── credentials.example.yaml # Credentials template
7391
├── playwright/ # Browser automation
7492
│ ├── package.json
7593
│ ├── tsconfig.json
7694
│ └── login.ts # Automated login script
77-
├── claude-demo.tape # Extended demo with AI agent
95+
├── claude-demo.tape # Extended demo with AI agent + beads
7896
└── README.md # This file
7997
```

demo/demo.gif

-1.38 MB
Loading

0 commit comments

Comments
 (0)