OpenClaw: documents from local path, rebuild workaround, forgejo-cli

- Documents (SOUL/TOOLS/AGENTS) from path input to openclaw-documents-repo
- Flake: openclaw-documents.url = path to local clone (no SSH under sudo)
- Remove in-repo openclaw-documents; add docs/openclaw-documents.md
- openclaw.nix: activation backup + force for openclaw.json (TODO to remove)
- home.nix: add forgejo-cli
- .gitignore: openclaw-documents-repo; drop SOUL/TOOLS ignores
- AGENTS.md: OpenClaw docs ref
- TODO: remove OpenClaw activation/force bloat

Made-with: Cursor
This commit is contained in:
DannyDannyDanny 2026-03-14 11:48:59 +01:00
parent e4dd491359
commit 0eb9d0e8ed
9 changed files with 79 additions and 29 deletions

View file

@ -0,0 +1,21 @@
# OpenClaw documents (separate repo)
SOUL.md, TOOLS.md, and any other markdown files used by OpenClaw are supplied via the flake input `openclaw-documents` in `nixos/flake.nix`. The input points at the **local clone** `path:/Users/danny/dotfiles/openclaw-documents-repo` so `sudo darwin-rebuild` doesnt need SSH to GitHub. (Change the path in `flake.nix` if your clone lives elsewhere.)
## Repo contents
The repo (or local clone) must have at least:
- `SOUL.md` who the assistant is, personality and boundaries
- `TOOLS.md` what the assistant can use and how
- `AGENTS.md` instructions for the AI when acting on your behalf
(The nix-openclaw module asserts these exist.)
- A minimal `flake.nix` so the repo can be used as a flake input:
```nix
{ outputs = { ... }: { source = ./.; }; }
```
## Local clone
The flake uses the local clone at `~/dotfiles/openclaw-documents-repo/` (path input, gitignored). Edit SOUL/TOOLS there; the next rebuild uses the current directory contents (no `nix flake update` needed). Push/pull to sync with the private GitHub repo when you like.
To use the remote repo instead (e.g. on another machine), set `openclaw-documents.url = "git+ssh://git@github.com/DannyDannyDanny/openclaw-documents"` in `nixos/flake.nix` and ensure your SSH key is loaded when running the rebuild.