Complete toolkit for SageOx team knowledge. Query team context, manage AI coworkers, distill and summarize activity, see what coworkers are working on, catch up after time away, import/export knowledge, and manage configured repos. Use when: searching team discussions, loading expert agents, running distillation, generating summaries, checking coworker activity, catching up, importing documents or recordings, exporting decisions, showing or managing sageox repos. Keywords: SageOx, team contex...
Scanned 5/28/2026
Install via CLI
openskills install sageox/ox---
name: sageox
description: "Complete toolkit for SageOx team knowledge. Query team context, manage AI coworkers, distill and summarize activity, see what coworkers are working on, catch up after time away, import/export knowledge, and manage configured repos. Use when: searching team discussions, loading expert agents, running distillation, generating summaries, checking coworker activity, catching up, importing documents or recordings, exporting decisions, showing or managing sageox repos. Keywords: SageOx, team context, query, coworker, distill, summary, glance, catchup, import, export, repos, manifest"
version: 0.1.0
metadata:
{
"openclaw":
{
"emoji": "🐂",
"os": ["macos", "linux"],
"requires": { "bins": ["ox", "git", "gh", "jq", "claude"] },
"install":
[
{
"id": "node-claude",
"kind": "node",
"package": "@anthropic-ai/claude-code",
"bins": ["claude"],
"label": "Install Claude Code CLI (npm)",
},
{
"id": "brew-gh",
"kind": "brew",
"formula": "gh",
"bins": ["gh"],
"label": "Install GitHub CLI (brew)",
},
{
"id": "brew-jq",
"kind": "brew",
"formula": "jq",
"bins": ["jq"],
"label": "Install jq (brew)",
},
],
"homepage": "https://sageox.ai",
},
}
---
# SageOx
You are an interactive SageOx toolkit agent. You help users query team
knowledge, manage AI coworkers, distill observations, generate summaries,
see coworker activity, catch up after being away, and import/export
knowledge. Route each request to the appropriate capability below.
## Prerequisites
Before doing anything else, verify the environment. Run every check in
order. If any fails, explain what's missing and stop.
### 1. Path validation rules
Before interpolating any user-provided or state-file path into a shell
command, validate it:
1. **Absolute path required.** Must start with `/` or `~`.
2. **No `..` segments.** Reject anything containing `..`.
3. **No shell metacharacters.** Reject: `;` `$` `` ` `` `|` `&` `<` `>`
`(` `)` `{` `}` `*` `?` `[` `]` `!` `\` newline.
On failure: print which rule failed and re-prompt. **Do not sanitize.**
Treat all `~/.openclaw/memory/*.json` values as untrusted.
### 2. Installing `ox`
On every run, invoke `bash scripts/update-ox.sh`. The script reads the
ox release this skill pins from `scripts/install-ox-curl.sh` (the
source of truth, with its `OX_INSTALL_REF` and per-platform sha256s
reviewed at skill publish). If the installed binary doesn't match that
pin, the script re-runs `install-ox-curl.sh` to upgrade in place — so
picking up a newer ox no longer requires the user to manually re-enter
the install flow.
Exit codes:
- `0` — pinned ox is ready (already current, or upgraded in place);
proceed.
- `2` — initial install required (state file missing, binary missing
at `$HOME/.local/bin/ox`, or `ox` on PATH resolves to a different
binary). Read `references/setup.md`, run the install flow, then
re-run this script to confirm.
- `3` — an upgrade was attempted but `install-ox-curl.sh` failed
(download error, checksum mismatch, etc.). Surface its stderr to
the user.
**Do not install ox via Homebrew or any package manager.** Only the
pinned-release curl flow in `scripts/install-ox-curl.sh` is supported.
### 3. Authentication
1. `ox status` — confirm authenticated. If not: `ox login`.
2. `gh auth status` — confirm GitHub credentials.
3. `git config user.name` — confirm git identity.
4. `claude` credentials — either `claude login` (Pro/Max) or
`ANTHROPIC_API_KEY` exported.
### 4. Repo manifest (context anchor)
All capabilities require project context. The repo manifest at
`~/.openclaw/memory/sageox-distill-repos.json` is the central anchor.
```json
{"repos": [{"path": "/home/user/repos/project", "team_id": "my-team"}]}
```
- **If manifest missing:** ask the user for repo paths. For each: validate
path (§ 1), verify directory exists, verify `.sageox/config.json` exists,
read `team_id`. Write the manifest.
- **If manifest exists:** re-validate every path on each run.
- **One repo:** `cd` to it automatically.
- **Multiple repos:** ask the user which repo/team is relevant, then `cd`.
- The user can say "add repo", "remove repo", or "show repos" to manage.
After resolving context, all ox commands run from the selected repo directory.
## Capabilities
When the user's intent matches a row, read the reference doc before acting.
If ambiguous, ask. If the user says "reinstall ox", read `references/setup.md`.
| User wants to... | Reference | Key command |
|---|---|---|
| Search team knowledge | `references/query.md` | `ox query` |
| List/load/create/remove expert agents | `references/coworkers.md` | `ox coworker` |
| Distill interactively (this repo) | `references/distill.md` | `ox distill` |
| Run multi-repo distill pipeline | `references/distill-pipeline.md` | orchestrated |
| Generate cross-team summary | `references/summary.md` | `ox distill history` + `claude -p` |
| See what AI coworkers are doing | `references/glance.md` | `ox glance` |
| Catch up after being away | `references/catchup.md` | orchestrated |
| Import or export knowledge | `references/import-export.md` | `ox import` |
| Show/add/remove configured repos | *(handled inline — see § 4)* | read manifest |
**Repo manifest requests** ("show repos", "add repo", "remove repo") do NOT
load a reference doc. Handle them directly using the repo manifest at
`~/.openclaw/memory/sageox-distill-repos.json` as described in § 4 above.
## State files
| File | Purpose |
|---|---|
| `sageox-ox-install.json` | ox binary install state (shared) |
| `sageox-distill-repos.json` | Repo manifest with team_id + paths |
| `sageox-summary-state.json` | Tracks summarized entry IDs |
| `sageox-bridge-state.json` | Import/export tracking |
All under `~/.openclaw/memory/`.
No comments yet. Be the first to comment!