285 lines
9.5 KiB
Markdown
285 lines
9.5 KiB
Markdown
Poniżej masz **komplet “bootstrap” tylko z komend `openclaw`** (plus zmienna ścieżki), który utworzy dokładnie system z Twojego diagramu: `_MCC`, `APOLLO`, `HUBBLE`, `ARTEMIS`, sekcje, pliki startowe, template’y oraz plik mapowania `openclaw.missions.json`.
|
||
|
||
***
|
||
|
||
# 0) Wybierz gdzie ma powstać system (ROOT\_PATH)
|
||
|
||
✅ Najbezpieczniej: **wewnątrz workspace OpenClaw** (żeby sandbox/polityki narzędzi działały przewidywalnie).
|
||
Jeśli chcesz osobny katalog (np. `D:\org\missions`), też się da — ale wtedy **upewnij się, że sandbox ma do niego dostęp** (patrz krok 2). [\[docs.openclaw.ai\]](https://docs.openclaw.ai/cli/sandbox), [\[docs.openclaw.ai\]](https://docs.openclaw.ai/cli)
|
||
|
||
***
|
||
|
||
# 1) Profil + Gateway (komendy OpenClaw)
|
||
|
||
Użyj osobnego profilu, żeby nie mieszać z resztą configu:
|
||
|
||
```bash
|
||
# Linux/macOS/WSL
|
||
openclaw --profile missionctl gateway status
|
||
openclaw --profile missionctl gateway start
|
||
openclaw --profile missionctl gateway status
|
||
```
|
||
|
||
Polecenia `gateway start/status` są wprost w CLI i służą do kontroli serwisu Gateway. [\[docs.openclaw.ai\]](https://docs.openclaw.ai/cli), [\[docs.openclaw.ai\]](https://docs.openclaw.ai/gateway)
|
||
|
||
***
|
||
|
||
# 2) Sprawdź dostęp sandboxa do workspace (ważne)
|
||
|
||
```bash
|
||
openclaw --profile missionctl sandbox explain
|
||
```
|
||
|
||
To pokaże Ci efektywny tryb sandboxa oraz zakres dostępu do workspace. [\[docs.openclaw.ai\]](https://docs.openclaw.ai/cli/sandbox)
|
||
|
||
> Jeśli w tym miejscu widzisz, że agent nie ma prawa pisać do wybranej ścieżki — przenieś ROOT\_PATH do workspace OpenClaw albo zmień ustawienia sandboxa (to już zależy od Twojej konfiguracji).
|
||
|
||
***
|
||
|
||
# 3) (Opcjonalnie, ale polecane) Ustaw profil narzędzi na „coding”, żeby mieć `fs`
|
||
|
||
OpenClaw ma polityki narzędzi i profile (np. `coding` zawiera grupę plikową `fs`). Jeśli masz zbyt restrykcyjne ustawienia, ustaw globalnie profil `coding`:
|
||
|
||
```bash
|
||
openclaw --profile missionctl config set tools.profile '"coding"'
|
||
```
|
||
|
||
`openclaw config set` to oficjalny sposób ustawiania wartości w configu. [\[docs.openclaw.ai\]](https://docs.openclaw.ai/cli), [\[deepwiki.com\]](https://deepwiki.com/openclaw/openclaw/6.2-tool-security-and-sandboxing)
|
||
|
||
***
|
||
|
||
# 4) BOOTSTRAP: jedna komenda `openclaw agent` tworząca cały system
|
||
|
||
Poniżej jest **jedno polecenie** (Linux/macOS/WSL) – agent:
|
||
|
||
* tworzy strukturę folderów,
|
||
* zapisuje pliki MCC,
|
||
* zapisuje template’y,
|
||
* zapisuje `openclaw.missions.json` zgodnie z diagramem.
|
||
|
||
## 4A) Linux/macOS/WSL (bash)
|
||
|
||
> Ustaw `ROOT_PATH` (np. `~/missions` albo `~/.openclaw/workspace/missions`).
|
||
|
||
```bash
|
||
export ROOT_PATH="$HOME/.openclaw/workspace/missions"
|
||
|
||
openclaw --profile missionctl agent --message "
|
||
Jesteś MISSION CONTROL bootstrapper. Masz utworzyć strukturę systemu zarządzania MISJAMI w katalogu ROOT_PATH=$ROOT_PATH.
|
||
Wykonaj dokładnie:
|
||
|
||
1) Utwórz katalogi:
|
||
- $ROOT_PATH/_MCC/50_templates
|
||
- $ROOT_PATH/APOLLO/CORE_TECH/missions
|
||
- $ROOT_PATH/APOLLO/FLIGHT_CODE/missions
|
||
- $ROOT_PATH/APOLLO/VERIFICATION/missions
|
||
- $ROOT_PATH/APOLLO/99_archive
|
||
- $ROOT_PATH/HUBBLE/CONTENT/missions
|
||
- $ROOT_PATH/HUBBLE/CREATIVE/missions
|
||
- $ROOT_PATH/HUBBLE/99_archive
|
||
- $ROOT_PATH/ARTEMIS/EXPERIMENTS/missions
|
||
- $ROOT_PATH/ARTEMIS/TELEMETRY/missions
|
||
- $ROOT_PATH/ARTEMIS/GROUND_CREW/missions
|
||
- $ROOT_PATH/ARTEMIS/99_archive
|
||
|
||
2) Zapisz pliki startowe (nadpisz jeśli istnieją):
|
||
A) $ROOT_PATH/_MCC/00_operating-manual.md
|
||
Treść:
|
||
# Operating Manual — Mission System
|
||
|
||
## Governance
|
||
- PROGRAM LEAD: vision, strategy, final decisions
|
||
- MISSION CONTROL (MCC): triage, routing, execution, WIP, closure
|
||
|
||
## Missions
|
||
- APOLLO: Flight Systems (Core Tech, Flight Code, Verification)
|
||
- HUBBLE: Mission Story (Mission Content, Creative Studio)
|
||
- ARTEMIS: Mission Outcomes (Experiments, Telemetry, Ground Crew)
|
||
|
||
## Packet standard
|
||
Each packet contains:
|
||
00_brief.md, 10_worklog.md, 20_artifacts/, 30_results.md, 40_decision.md, 90_links.md
|
||
|
||
## Modes
|
||
SIM (default) vs FLIGHT (requires SIM→FLIGHT checklist)
|
||
|
||
## Closure
|
||
PROCEED | ITERATE | HOLD | SCRUB
|
||
|
||
B) $ROOT_PATH/_MCC/40_routing-rules.md
|
||
Treść:
|
||
# Routing Rules (MCC)
|
||
|
||
## Call-signs → folders
|
||
APOLLO-CORE → APOLLO/CORE_TECH
|
||
APOLLO-CODE → APOLLO/FLIGHT_CODE
|
||
APOLLO-VERIFY → APOLLO/VERIFICATION
|
||
|
||
HUBBLE-CONTENT → HUBBLE/CONTENT
|
||
HUBBLE-CREATIVE → HUBBLE/CREATIVE
|
||
|
||
ARTEMIS-EXP → ARTEMIS/EXPERIMENTS
|
||
ARTEMIS-TLM → ARTEMIS/TELEMETRY
|
||
ARTEMIS-GROUND → ARTEMIS/GROUND_CREW
|
||
|
||
## Default mode
|
||
SIM is default. FLIGHT requires checklist + approvals.
|
||
|
||
C) Puste indeksy:
|
||
- $ROOT_PATH/_MCC/10_backlog.md (\"# Backlog (MCC)\")
|
||
- $ROOT_PATH/_MCC/20_active-missions.md (\"# Active Missions (MCC)\")
|
||
- $ROOT_PATH/_MCC/30_decisions.md (\"# Decisions (MCC)\")
|
||
- $ROOT_PATH/_MCC/90_archive-index.md (\"# Archive Index (MCC)\")
|
||
|
||
3) Zapisz templates:
|
||
- $ROOT_PATH/_MCC/50_templates/task-brief.md
|
||
- $ROOT_PATH/_MCC/50_templates/sim-flight-checklist.md
|
||
- $ROOT_PATH/_MCC/50_templates/post-mission-report.md
|
||
- $ROOT_PATH/_MCC/50_templates/decision-record.md
|
||
|
||
Treści:
|
||
(task-brief.md)
|
||
# [CALLSIGN] Task Brief — <title>
|
||
Routing: [CALLSIGN]
|
||
Agent: <AgentName>
|
||
Mode: SIM | FLIGHT
|
||
Priority: P0 | P1 | P2
|
||
## Context
|
||
## Goal
|
||
## Deliverables
|
||
## Constraints
|
||
## Acceptance Criteria
|
||
## Risks
|
||
|
||
(sim-flight-checklist.md)
|
||
# SIM → FLIGHT Checklist
|
||
- Acceptance criteria met
|
||
- Artifacts linked in 90_links.md
|
||
- Risks reviewed
|
||
- Verification done (if needed)
|
||
- Telemetry plan ready (if needed)
|
||
- MCC GO
|
||
- PROGRAM LEAD GO (P0/P1)
|
||
|
||
(post-mission-report.md)
|
||
# Post-Mission Report — <title>
|
||
Packet:
|
||
Decision:
|
||
Summary:
|
||
Artifacts:
|
||
Measurements:
|
||
Learnings:
|
||
Next Steps:
|
||
|
||
(decision-record.md)
|
||
# Decision Record — <title>
|
||
Decision: PROCEED | ITERATE | HOLD | SCRUB
|
||
Date:
|
||
Owner:
|
||
Rationale:
|
||
Trade-offs:
|
||
Follow-up:
|
||
|
||
4) Zapisz plik mapowania:
|
||
$ROOT_PATH/_MCC/openclaw.missions.json
|
||
Treść JSON (dokładnie):
|
||
{
|
||
\"root_path\": \""$ROOT_PATH"\",
|
||
\"wip_limit\": 5,
|
||
\"modes\": { \"default\": \"SIM\", \"flight_requires_checklist\": true, \"flight_requires_program_lead_for_priority\": [\"P0\",\"P1\"] },
|
||
\"missions\": {
|
||
\"APOLLO\": {
|
||
\"label\": \"FLIGHT SYSTEMS\",
|
||
\"sections\": {
|
||
\"APOLLO-CORE\": { \"folder\": \"APOLLO/CORE_TECH\", \"agents\": [\"Anvil\",\"Cipher\"] },
|
||
\"APOLLO-CODE\": { \"folder\": \"APOLLO/FLIGHT_CODE\", \"agents\": [\"Pixel\",\"Sentry\"] },
|
||
\"APOLLO-VERIFY\": { \"folder\": \"APOLLO/VERIFICATION\", \"agents\": [\"Inspector\"] }
|
||
}
|
||
},
|
||
\"HUBBLE\": {
|
||
\"label\": \"MISSION STORY\",
|
||
\"sections\": {
|
||
\"HUBBLE-CONTENT\": { \"folder\": \"HUBBLE/CONTENT\", \"agents\": [\"Rex\",\"Sage\",\"Echo\",\"Clip\"] },
|
||
\"HUBBLE-CREATIVE\": { \"folder\": \"HUBBLE/CREATIVE\", \"agents\": [\"Nebula\",\"Nova\"] }
|
||
}
|
||
},
|
||
\"ARTEMIS\": {
|
||
\"label\": \"MISSION OUTCOMES\",
|
||
\"sections\": {
|
||
\"ARTEMIS-EXP\": { \"folder\": \"ARTEMIS/EXPERIMENTS\", \"agents\": [\"Scout\",\"Herald\"] },
|
||
\"ARTEMIS-TLM\": { \"folder\": \"ARTEMIS/TELEMETRY\", \"agents\": [\"Forge\",\"Pulse\"] },
|
||
\"ARTEMIS-GROUND\": { \"folder\": \"ARTEMIS/GROUND_CREW\", \"agents\": [\"Beacon\",\"Link\",\"Vibe\"] }
|
||
}
|
||
}
|
||
},
|
||
\"packet\": {
|
||
\"name_format\": \"YYYY-MM-DD__CALLSIGN__slug\",
|
||
\"required_files\": [\"00_brief.md\",\"10_worklog.md\",\"30_results.md\",\"40_decision.md\",\"90_links.md\"],
|
||
\"artifact_dir\": \"20_artifacts\"
|
||
}
|
||
}
|
||
|
||
5) Na koniec zwróć krótkie podsumowanie: co utworzyłeś i gdzie.
|
||
"
|
||
```
|
||
|
||
Polecenie `openclaw agent --message ...` jest oficjalnym sposobem uruchomienia jednego „turna” agenta przez Gateway. [\[docs.openclaw.ai\]](https://docs.openclaw.ai/cli)
|
||
|
||
***
|
||
|
||
## 4B) Windows PowerShell (jeśli wolisz)
|
||
|
||
```powershell
|
||
$ROOT_PATH = "$env:USERPROFILE\.openclaw\workspace\missions"
|
||
|
||
openclaw --profile missionctl agent --message @"
|
||
Utwórz strukturę systemu zarządzania MISJAMI w ROOT_PATH=$ROOT_PATH zgodnie z instrukcjami (katalogi, pliki MCC, template’y i openclaw.missions.json) analogicznie jak w wersji bash.
|
||
"@
|
||
```
|
||
|
||
(Jeśli chcesz, mogę przepisać cały “payload” z bash 1:1 do PowerShell `@" ... "@` — jest długi, ale działa.)
|
||
|
||
***
|
||
|
||
# 5) Weryfikacja (również komendami OpenClaw)
|
||
|
||
## 5.1 Sprawdź, że Gateway żyje i agent nie zgłasza błędów
|
||
|
||
```bash
|
||
openclaw --profile missionctl logs --follow
|
||
```
|
||
|
||
`openclaw logs --follow` to oficjalne tailowanie logów Gateway. [\[docs.openclaw.ai\]](https://docs.openclaw.ai/cli), [\[docs.openclaw.ai\]](https://docs.openclaw.ai/gateway)
|
||
|
||
## 5.2 Poproś agenta o krótki “tree check”
|
||
|
||
```bash
|
||
openclaw --profile missionctl agent --message "Sprawdź czy istnieją katalogi: _MCC, APOLLO, HUBBLE, ARTEMIS w $ROOT_PATH. Wypisz brakujące."
|
||
```
|
||
|
||
***
|
||
|
||
# Dlaczego to jest “prawdziwie OpenClaw”, a nie „udawane komendy”
|
||
|
||
* używamy wyłącznie **komend `openclaw`**: `gateway …`, `sandbox …`, `config set …`, `agent --message …`, `logs …` [\[docs.openclaw.ai\]](https://docs.openclaw.ai/cli), [\[docs.openclaw.ai\]](https://docs.openclaw.ai/cli/sandbox)
|
||
* file/folder provisioning robi agent (bo OpenClaw jest agent‑gateway + tool runtime, a nie narzędzie do mkdir) [\[docs.openclaw.ai\]](https://docs.openclaw.ai/cli), [\[docs.openclaw.ai\]](https://docs.openclaw.ai/gateway)
|
||
|
||
***
|
||
|
||
# Jedno pytanie, żebym dopiął to “na 100%” pod Twoją instalację
|
||
|
||
Czy OpenClaw u Ciebie działa:
|
||
|
||
1. na **Linux/WSL** czy
|
||
2. natywnie na **Windows**?
|
||
|
||
I gdzie chcesz ROOT\_PATH:
|
||
|
||
* w `~/.openclaw/workspace/` (najłatwiej), czy
|
||
* w Twoim `.org` (np. Johnny Decimal)?
|
||
|
||
Odpowiedz króciutko (np. „WSL + w .org”), a ja:
|
||
|
||
* dopasuję gotowy bootstrap do Twojej ścieżki,
|
||
* dam też wersję, która **od razu tworzy pierwszy przykładowy packet** (np. `YYYY-MM-DD__ARTEMIS-TLM__system-check/`) według standardu.
|