Skip to content

Commit d9c85b0

Browse files
feat: land public-core install and audit surfaces
1 parent d970945 commit d9c85b0

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

59 files changed

+3564
-259
lines changed

.github/workflows/ci.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@ jobs:
2222
- name: Run privacy check
2323
run: |
2424
PYTHONPATH=src python3 -m hyperclaw_max.privacy_check --repo .
25+
- name: Validate public config
26+
run: |
27+
PYTHONPATH=src python3 -m hyperclaw_max.runtime_validate config/openclaw.public.example.jsonc
2528
- name: Run unit tests
2629
run: |
2730
PYTHONPATH=src python3 -m unittest discover -s tests -q

README.md

Lines changed: 77 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -50,9 +50,13 @@ Think of it as **hiring a small autonomous company** — not just prompting a bo
5050
git clone https://github.com/alessiolidoz-hash/HyperClaw-Max.git
5151
cd HyperClaw-Max
5252

53-
# Run diagnostics
53+
# Run diagnostics and materialize a clean public-core target
54+
TARGET_ROOT=.hyperclaw-max-demo
5455
PYTHONPATH=src python3 -m hyperclaw_max.doctor --repo .
5556
PYTHONPATH=src python3 -m hyperclaw_max.privacy_check --repo .
57+
PYTHONPATH=src python3 -m hyperclaw_max.first_run "$TARGET_ROOT"
58+
PYTHONPATH=src python3 -m hyperclaw_max.runtime_validate "$TARGET_ROOT/config/openclaw.public.example.jsonc"
59+
PYTHONPATH=src python3 -m hyperclaw_max.ops_fabric.cli summary --state-dir "$TARGET_ROOT/runtime/state"
5660
PYTHONPATH=src python3 -m unittest discover -s tests -q
5761

5862
# Test the context intelligence engine
@@ -63,6 +67,8 @@ PYTHONPATH=src python3 -m hyperclaw_max.context_intel.pack "telegram inbound ded
6367
- ✅ The repo installs as a real Python package
6468
- ✅ The extracted core works
6569
- ✅ The privacy boundary is solid
70+
- ✅ The public core can be materialized on a clean target root
71+
- ✅ The public config and ops-fabric base validate
6672
- ✅ The test suite passes
6773

6874
---
@@ -352,22 +358,24 @@ Under the hood, the target operating model looks like this:
352358
Hetzner / VPS / Linux host
353359
|
354360
+--> systemd user services
355-
+--> Tailscale private reachability
356-
+--> Telegram first real connector
357-
+--> cloud models when needed
358-
+--> local endpoint when useful
359-
+--> persistent agent pack
361+
+--> private network boundary
362+
+--> patch-aware gateway control plane
363+
+--> model providers + optional local endpoint
364+
+--> persistent public-core pack
360365
+--> memory fabric
361366
+--> operational fabric
367+
+--> hook / connector adapters
368+
+--> optional voice / browser line
362369
`--> optional repo intelligence
363370
```
364371

365372
Recommended early shape:
366373
- one Linux host
367-
- private access over Tailscale
368-
- one primary owner channel
374+
- one private network path
369375
- one default persistent pack
370-
- one baseline memory core
376+
- one baseline memory and diagnostic core
377+
- one real validation surface
378+
- connectors enabled only when configured
371379

372380
**Reference deployment already proven in the private system:**
373381
- **Hetzner CAX31**
@@ -383,6 +391,11 @@ This is why the repo keeps talking about **local-first**:
383391
- your operations stay inspectable
384392
- your system is not a black box SaaS
385393

394+
Important packaging truth:
395+
- the live private body already proves more than the public repo currently ships
396+
- `HyperClaw-Max` is already real as a package and doc set
397+
- it is not yet the fully extracted public distro of the live body
398+
386399
---
387400

388401
## 🔌 Integrations And Why They Exist
@@ -393,16 +406,29 @@ The integration logic is simple:
393406
- **Tailscale** gives private remote reachability without exposing the whole stack publicly
394407
- **Cloud models** give strong performance when the task is hard
395408
- **Local models** give privacy, cost control, and autonomy
409+
- **Hooks** give a clean way to bridge email/calendar/drive style ingress
396410
- **Repo intelligence** gives a structured way to compare and import ideas
397411
- **Cartesia + Ink** give the voice and call surface
398412

413+
**Reference live surfaces already proven in the private system:**
414+
- Telegram
415+
- WhatsApp
416+
- Gmail / Calendar / Drive hook ingress
417+
- voice/browser services
418+
- repo-intel advisory lanes
419+
399420
**Reference voice stack in the private system today:**
400421
- **Cartesia Sonic 3** for TTS
401422
- **Cartesia Line** for browser/PWA voice calls
402423
- **Ink STT** in the voice-call path
403424
- `voice-broker`, `voice-line-agent`, and `voice-web` as dedicated services
404425
- `rtc-gateway-proxy` as an extra real-time surface
405426

427+
**Public repo truth right now:**
428+
- the docs describe these surfaces because they are real in the body
429+
- the repo already ships the Stage 1 core and trust layer
430+
- connector, voice, and richer fabric packaging are still an extraction roadmap, not a finished install surface
431+
406432
Each one exists because it solves a specific operational problem, not because it is trendy.
407433

408434
---
@@ -415,7 +441,7 @@ Each one exists because it solves a specific operational problem, not because it
415441
| Memory | Basic | **5-tier deep fabric** |
416442
| Operations | Minimal | **Full operational fabric** |
417443
| Intelligence | Core only | **+ Repo intelligence engine** |
418-
| Install | DIY | **Guided onboarding** |
444+
| Install | DIY | **Stage 1 real, full distro install surface in progress** |
419445
| Discipline | Flexible | **Role-based agent discipline** |
420446

421447
**The difference:** OpenClaw is a powerful base. HyperClaw-Max productizes it into a **richer operating system for autonomous work**.
@@ -463,7 +489,7 @@ HyperClaw-Max wants to help you **operate the whole company around it**.
463489

464490
---
465491

466-
## 🛠️ Guided Install
492+
## 🛠️ Phased Install Surface
467493

468494
### Recommended Baseline
469495

@@ -480,29 +506,28 @@ HyperClaw-Max wants to help you **operate the whole company around it**.
480506

481507
```bash
482508
# Core
483-
apt install -y git ripgrep bash
509+
apt install -y git ripgrep bash curl
484510

485-
# Optional but recommended
486-
apt install -y gh # GitHub CLI
487-
snap install ollama # Local models
511+
# Useful during setup
512+
apt install -y jq gh
488513
```
489514

490-
### Install Flow (Target)
515+
### Install Flow
491516

492517
```mermaid
493518
graph LR
494-
A[1. Clone Repo] --> B[2. Run Setup]
495-
B --> C[3. Choose Models]
496-
C --> D[4. Connect Tailscale]
497-
D --> E[5. Connect Telegram]
498-
E --> F[6. Enable Agent Pack]
499-
F --> G[7. Run Validation]
500-
G --> H[8. Start Working]
519+
A[1. Clone Repo] --> B[2. Install Core Deps]
520+
B --> C[3. Read Boundaries And Config]
521+
C --> D[4. Fill Template Config]
522+
D --> E[5. Choose Core Models]
523+
E --> F[6. Enable Core Pack]
524+
F --> G[7. Run Public-Core Checks]
525+
G --> H[8. Add Optional Channels And Adapters]
501526
502527
style H fill:#4ecdc4,stroke:#333,stroke-width:3px
503528
```
504529

505-
> **Status:** Steps 1-3 are real today. Steps 4-8 are the roadmap.
530+
> **Status:** Steps 1-7 describe the current public-core pass. Connector, voice, repo-intel, and richer fabric lanes are still being extracted from the live body.
506531
507532
📖 **See:** [install/ONBOARDING.md](install/ONBOARDING.md)
508533

@@ -516,7 +541,9 @@ graph LR
516541
| [MEMORY-FABRIC.md](docs/MEMORY-FABRIC.md) | 5-tier memory system details |
517542
| [HOSTING-AND-DEPENDENCIES.md](docs/HOSTING-AND-DEPENDENCIES.md) | Server setup, requirements |
518543
| [PRIVACY-AND-SECRETS.md](docs/PRIVACY-AND-SECRETS.md) | Privacy boundaries, secrets management |
544+
| [BOUNDARY-AUDIT.md](docs/BOUNDARY-AUDIT.md) | Current public-safety gate and audit scope |
519545
| [CLI.md](docs/CLI.md) | Command reference |
546+
| [OPERATIONAL-FABRIC.md](docs/OPERATIONAL-FABRIC.md) | Public task / delegation / watchdog base |
520547
| [ROADMAP.md](docs/ROADMAP.md) | What's next |
521548
| [PACK-MANIFEST.yaml](agents/PACK-MANIFEST.yaml) | Agent definitions |
522549
| [building-the-brain.md](docs/vision/building-the-brain.md) | Long-form memory fabric narrative |
@@ -526,7 +553,7 @@ graph LR
526553

527554
## ✅ What's Real Today
528555

529-
### Already Working
556+
### Already Working In This Repo
530557

531558
| Component | Status |
532559
|-----------|--------|
@@ -536,15 +563,36 @@ graph LR
536563
| Test suite | ✅ Real |
537564
| Privacy boundary docs | ✅ Real |
538565
| Generic boot drafts | ✅ Real |
566+
| Public extraction map | ✅ Real |
567+
| Public config example | ✅ Real |
568+
| Manual onboarding path | ✅ Real |
569+
| Gateway unit templates | ✅ Real |
570+
| Operational-fabric schemas and bootstrap CLI | ✅ Real |
571+
| Materialize-pack CLI | ✅ Real |
572+
| First-run bootstrap CLI | ✅ Real |
573+
| Optional connector templates | ✅ Real |
574+
| Boundary audit doc and checks | ✅ Real |
539575
| `doctor` command | ✅ Real |
540576
| `privacy-check` command | ✅ Real |
577+
| `validate-config` command | ✅ Real |
578+
| `ops-fabric` command | ✅ Real |
541579
| CI workflow | ✅ Real |
542580

543-
### Still In Progress
581+
### Real In The Live Body, Not Yet Fully Extracted Here
582+
583+
- patch-aware control plane
584+
- richer operational fabric beyond the public base
585+
- hook and connector surfaces
586+
- local and hybrid routing layers
587+
- voice and browser line
588+
- Tier 5 compare and sync workflows
589+
590+
### Still In Progress For The Public Distro
544591

545592
- 🔧 Public-safe `query-fusion` shell
546-
- 🔧 Install and validation scripts
547-
- 🔧 Richer connector templates
593+
- 🔧 Dispatch, watchdog, and observability wrappers beyond the public base
594+
- 🔧 Richer connector automation beyond the shipped templates
595+
- 🔧 Voice/browser adapter packaging
548596
- 🔧 Repo-intel adapter contract
549597
- 🔧 Broader memory backends
550598
- 🔧 Sector overlays
@@ -562,7 +610,7 @@ graph LR
562610

563611
**This is a public-safe distro.** Your private stack stays private.
564612

565-
📖 **See:** [PRIVACY-AND-SECRETS.md](docs/PRIVACY-AND-SECRETS.md), [BOUNDARIES.md](docs/BOUNDARIES.md)
613+
📖 **See:** [PRIVACY-AND-SECRETS.md](docs/PRIVACY-AND-SECRETS.md), [BOUNDARIES.md](docs/BOUNDARIES.md), [BOUNDARY-AUDIT.md](docs/BOUNDARY-AUDIT.md)
566614

567615
---
568616

agents/PACK-MANIFEST.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
version: 0
22
name: hyperclaw-max-default-pack
3-
status: skeleton
3+
status: public-core-beta
44

55
required_agents:
66
- id: main
@@ -29,3 +29,4 @@ pack_rules:
2929
- private user identity and routing doctrine are not
3030
- real secrets are injected post-install
3131
- private overlay may extend this pack without mutating public core
32+
- materialization renders public-safe boots over a clean base install

agents/README.md

Lines changed: 17 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,19 @@
11
# Agent Pack
22

3-
This directory defines the default public persistent-agent pack.
4-
5-
Current intent:
6-
- ship a minimal but real multi-agent working set
7-
- keep finance/legal as optional overlays
8-
- keep private personal routing rules out of the public distro
9-
10-
The agent pack should eventually include:
11-
- public-safe boot files
12-
- workspace templates
13-
- example tasks
14-
- setup guidance for Telegram and local models
3+
This directory defines the default public persistent-agent pack and its optional overlays.
4+
5+
Current reality:
6+
- `main`, `codex`, `pa`, and `hk` are the public core pack
7+
- `finance` and `legal` are optional overlays
8+
- `hyperclaw-materialize-pack` renders these boots over a clean base install
9+
10+
Boundaries:
11+
- core pack = required for a credible public install
12+
- optional overlays = additive, explicit, and disable cleanly
13+
- private overlay = owner-specific routing, memory, auth, sessions, and doctrine that never ship here
14+
15+
What these files are for:
16+
- `README.md` explains the lane honestly
17+
- `AGENTS.md` defines role and guardrails
18+
- `BOOTSTRAP.md` defines startup checks and degradation rules
19+
- `TOOLS.md` defines the expected public-safe surfaces for that role

agents/codex/BOOTSTRAP.md

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,16 @@
11
# CODEX Bootstrap
22

33
Startup checklist:
4-
1. run tests
5-
2. verify package imports
6-
3. inspect current roadmap
7-
4. confirm optional adapters are not blocking the base distro
8-
5. verify no secret-bearing files leaked into tracked surfaces
4+
1. run doctor, privacy check, and config validation
5+
2. verify the package imports and CLI entrypoints resolve
6+
3. verify the materialized pack metadata matches the selected agent set
7+
4. run unit tests for the extracted public surfaces
8+
5. inspect roadmap and extraction map before widening the surface
9+
6. confirm optional adapters are not blocking the base distro
10+
7. verify no secret-bearing files leaked into tracked surfaces
911

1012
Golden rule:
1113
- public-safe first
14+
15+
Failure rule:
16+
- if a feature needs private state to look healthy, mark it optional or exclude it

agents/codex/TOOLS.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,11 @@ Useful:
1414
- optional OpenAI / Anthropic keys
1515

1616
Core surfaces:
17+
- `hyperclaw-materialize-pack`
18+
- `hyperclaw-doctor`
19+
- `hyperclaw-privacy-check`
20+
- `hyperclaw-validate-config`
21+
- `hyperclaw-ops-fabric`
1722
- package source in `src/`
1823
- fixtures in `fixtures/`
1924
- tests in `tests/`

agents/finance/AGENTS.md

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
# FINANCE
2+
3+
Role:
4+
- accounting and treasury overlay
5+
- valuation and spreadsheet lane
6+
- optional specialist
7+
8+
Pack status:
9+
- optional
10+
- overlay, not public-core required
11+
12+
Responsibilities:
13+
- reason over user-provided finance data and templates
14+
- keep finance workflows separate from the core orchestration pack
15+
- expose optional surfaces without leaking private books or sources
16+
17+
Memory contract:
18+
- can operate with Tier 1 only
19+
- may benefit from optional deeper memory if the installer adds it
20+
21+
Guardrails:
22+
- no private bank feeds
23+
- no real cap tables
24+
- no personal bookkeeping state
25+
- no dependency on private finance doctrine

agents/finance/BOOTSTRAP.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# FINANCE Bootstrap
2+
3+
Startup checklist:
4+
1. confirm the overlay is explicitly enabled
5+
2. confirm finance data sources are user-provided and replaceable
6+
3. confirm no ledgers, statements, or credentials are tracked in-repo
7+
4. confirm spreadsheet and reporting tooling is present if required by the user
8+
9+
If finance inputs are missing:
10+
- report the overlay as disabled
11+
- do not block public core startup

agents/finance/TOOLS.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
# FINANCE Tools
2+
3+
Primary surfaces:
4+
- spreadsheet imports supplied by the installer
5+
- optional finance prompts, reports, and models
6+
- public-safe docs and templates only
7+
8+
Suggested dependencies:
9+
- Python 3.11+
10+
- optional spreadsheet tooling
11+
- optional market/API keys supplied post-install
12+
13+
Privacy contract:
14+
- never ships private ledgers or credentials
15+
- never assumes one operator's finance workflow

agents/hk/BOOTSTRAP.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
# HK Bootstrap
22

33
Startup checklist:
4-
1. inspect enabled timers
5-
2. inspect failed services
4+
1. inspect doctor, privacy, config, and ops-fabric validation results
5+
2. inspect enabled timers and failed services when systemd is present
66
3. confirm memory and connector checks are green or clearly degraded
77
4. report drift without guessing
88
5. confirm optional adapters are not misreported as core failures
9+
6. confirm workspace and runtime state layout matches the materialized pack
910

1011
Goal:
1112
- honest system health, not fake green status

0 commit comments

Comments
 (0)