Commit Graph

33 Commits

Author SHA1 Message Date
joshp123
280744ce0c infra: slim clawdinators aws footprint
What:
- bound CLAWDINATOR image artifact retention with S3 lifecycle, AMI pruning, and import provenance tags
- reduce the AWS fleet to Babelfish-only and make GitHub credentials opt-in per host
- disable the AMI build, nix-openclaw bump, and release workflows by moving them out of .github/workflows/
- update operator docs for the new explicit build and deploy model

Why:
- stop unbounded S3 and snapshot growth from image builds
- remove unattended resurrection paths and shut down the unused t3.large instances
- keep the remaining Babelfish host running without GitHub App credentials or sync timers

Tests:
- `nix shell nixpkgs#shellcheck nixpkgs#shfmt -c bash scripts/lint-shell.sh` (pass)
- `nix build .#nixosConfigurations.clawdinator-babelfish.config.system.build.toplevel .#nixosConfigurations.clawdinator-1.config.system.build.toplevel .#nixosConfigurations.clawdinator-2.config.system.build.toplevel` (pass)
- `AWS_PROFILE=homelab-admin TF_VAR_aws_region=eu-central-1 TF_VAR_ami_id=ami-0a9abe17feeee0079 TF_VAR_ssh_public_key="$(cat ~/.ssh/id_ed25519.pub)" nix shell nixpkgs#opentofu -c sh -lc 'tofu fmt -check && tofu validate'` (pass)
- live AWS apply: destroyed `clawdinator-1` and `clawdinator-2`, replaced Babelfish, and verified only `Fleet Deploy` remains active in GitHub Actions
2026-04-03 15:38:57 +02:00
Josh Palmer
634f7fc0ce docs: enforce AMI rebuild
- note manual host fixes require rebuild + redeploy
2026-02-03 17:02:15 -08:00
Josh Palmer
4fd6ab11e4 feat: control api invoke creds
- add lambda invoke IAM user + outputs
- update fleet control to invoke lambda directly
- wire new control access-key secrets
- update docs + secrets guidance
2026-02-03 11:10:39 +01:00
Josh Palmer
05d43b1926 infra: add fleet control api + multi-instance
- add control API Lambda + fleet deploy workflow
- introduce instances registry + common host config
- add fleet control skill + scripts
- update bootstrap bundles + secrets docs
- wire OpenTofu for multi-instance + user-data
2026-02-03 01:20:23 +01:00
Josh Palmer
2320639342 fix: allow gh token refresh without sudo
- run github-app-token service as clawdinator user
- add clawdinator-gh-refresh command + tools note
- move canned-response guardrails to workspace AGENTS
2026-02-01 12:04:16 +01:00
Josh Palmer
a2978e20a3 docs: forbid closing maintainer-assigned PRs 2026-02-01 01:25:12 +01:00
Josh Palmer
4dfed7f610 docs: lock canned PR responses to approved context
- Require canned responses as the base
- Ban riffing/policy statements without approval
- Allow only short factual PR-specific context with approval
2026-02-01 01:16:45 +01:00
Josh Palmer
7690daf793 docs: add full SDLC deploy steps to AGENTS.md
Documented verified local→AMI→host flow including:
- homelab-admin AWS creds via agenix
- CI run monitoring and AMI_ID extraction
- tofu redeploy via devenv
- post-deploy checks + GH auth status
- reminder about snapshot-seeded repos/workspace
2026-02-01 00:19:31 +01:00
Josh Palmer
c2c3bf4f46 🔄 rebrand: moltbot → openclaw, clawdinators
Rename org references from moltbot to openclaw across all config, docs,
CI workflows, flake inputs, secret names, and repo seeds.

Mapping:
- org: moltbot → openclaw
- repos: moltinators → clawdinators, nix-moltbot → nix-openclaw, molthub → clawhub
- secrets: moltinator-* → clawdinator-*
- flake input: nix-moltbot → nix-openclaw
- GH repos renamed: openclaw/nix-openclaw, openclaw/clawdinators

Upstream package/binary names (moltbot, moltbot-gateway, moltbot.json)
kept as-is — those come from nix-openclaw and haven't been renamed yet.

Tests: not run (rename-only change; CI will validate flake eval)
2026-01-30 14:30:46 +01:00
Josh Palmer
e9b6613f2f 🤖 config: align queue + discord channel schema
What:
- switch messages.queue.byProvider to byChannel in host config and example
- remove legacy autoReply flag from discord channel config
- update AGENTS note for the new queue key

Why:
- moltbot schema rejects byProvider and autoReply keys
- keep deployment notes consistent with valid config

Tests:
- not run (infra config change; no automated tests)
2026-01-28 19:46:55 +01:00
Josh Palmer
78f57df5a8 🤖 chore: move to moltbot upstream + sync tooling
What:
- swap nix-moltbot inputs, packages, and workflow automation
- update secrets wiring, repo seeds, and org references for moltbot
- fix self-update path and moltbot config/log defaults

Why:
- align infra with moltbot rename and new packaging
- restore update pipeline + consistent bootstrap artifacts

Tests:
- ./scripts/build-image.sh (fails: /build chmod permission on darwin)
2026-01-28 18:36:10 +01:00
Josh Palmer
a7106d3072 Move secrets + repo seeds to runtime bootstrap 2026-01-10 17:04:18 +01:00
Josh Palmer
a0bb39a106 Fix Discord queue + OpenAI model name 2026-01-09 23:38:38 +01:00
Josh Palmer
1190603aad allow host edits but require ami rebuild 2026-01-08 15:19:39 +01:00
Josh Palmer
eea52ba9f1 declare no-rsync ami-only deploy rule 2026-01-08 15:14:20 +01:00
Josh Palmer
fe0b471ee8 Document toolchain propagation and auto-seed tools 2026-01-08 14:33:05 +01:00
Josh Palmer
58d8701241 Clarify maintainer role: monitor and triage 2026-01-08 11:30:00 +01:00
Josh Palmer
e9a42982bf Add baked-in agent docs and bootstrap ritual 2026-01-08 11:27:28 +01:00
Josh Palmer
4cc50d7138 Bake agenix key into image build 2026-01-08 11:23:28 +01:00
Josh Palmer
b7bcb05601 Add SSM access and NVMe grub, bump root volume 2026-01-08 01:18:04 +01:00
Josh Palmer
a8496f7494 Document AMI lookup command 2026-01-08 00:33:46 +01:00
Josh Palmer
698e3e3cff Allow IAM bootstrap without AMI and add snapshot permissions 2026-01-08 00:19:25 +01:00
Josh Palmer
4b2399ea34 Switch AMI import to snapshot workflow 2026-01-08 00:11:22 +01:00
Josh Palmer
8da1628d93 Add AWS instance provisioning and raw image bootstrap 2026-01-07 23:48:32 +01:00
Josh Palmer
2a40dbb15b Harden AWS image pipeline and cleanup host config 2026-01-07 23:00:21 +01:00
Josh Palmer
50f40166ba Use amazon image format for AMI import 2026-01-07 22:39:50 +01:00
Josh Palmer
522ccd50b1 Remove legacy language and enforce greenfield policy 2026-01-07 22:08:24 +01:00
Josh Palmer
486e91508e Switch pipeline to AWS AMI and remove Hetzner path 2026-01-07 21:51:04 +01:00
Josh Palmer
8e8d439d75 Use hcloud-upload-image for Hetzner imports 2026-01-07 18:25:37 +01:00
Josh Palmer
316bbe9e48 Add S3 image pipeline and CI 2026-01-07 17:55:43 +01:00
Josh Palmer
92440b58b4 Clarify CLAWDINATOR docs and Hetzner host setup 2026-01-07 12:22:10 +01:00
Josh Palmer
6943ae8fe0 Bump nix-clawdbot and codify no-inline-scripting 2026-01-07 12:08:06 +01:00
Josh Palmer
0fc2d5bbf7 Initial CLAWDINATOR infra + NixOS scaffolding 2026-01-07 00:08:18 +01:00