feat: add utility action suites
CI / validate (push) Successful in 36s

This commit is contained in:
2026-07-21 11:38:11 -05:00
parent 52c56f7fed
commit f1a8bb0f35
15 changed files with 1117 additions and 42 deletions
+12
View File
@@ -25,6 +25,9 @@ Commands:
- `cargo run -- serve`
- `cargo run -- query "log hello from codex"`
- `cargo run -- run logger --payload '{"message":"hello from codex"}'`
- `cargo run -- run calculate --payload '{"expression":"2 + 2 * 3"}'`
- `cargo run -- run to_slug --payload '{"text":"Hello, World!"}'`
- `cargo run -- run write_note --payload '{"filename":"hello.txt","content":"hello"}'`
- `scripts/codex-setup.sh`
- `scripts/codex-run-logger.sh`
- `scripts/precommit-check.sh`
@@ -42,6 +45,15 @@ Environment:
The LLM may return verbose JSON like `{"action_id":"logger","payload":{"message":"hello"}}` or compact codebook JSON like `{"v":"1.0.0","c":"<codebook_checksum>","a":"A001","p":{"F001":"hello"}}`. Compact outputs must match `dictionary/model.codebook.json` version and checksum before expansion. The runtime only executes exact `action_id` matches from `dictionary/actions.index.json`; aliases are not executable. Invalid or unknown outputs are rejected without running anything.
Registered suites:
- Math & Conversion: `calculate`, `convert_units`, `generate_uuid`, `random_number`.
- Text Utilities: `count_words`, `to_slug`, `hash_string`, `truncate_text`.
- File Operations: `write_note`, `append_to_file`, `read_file`, `delete_file`.
- Logger: `logger`.
File operations are sandboxed to project-local `notes/`.
Codex environment: `.codex/environments/environment.toml` defines setup plus Build, Test, Generate Dictionary, Precommit Check, Run Logger, Query Logger, and Serve Llama actions.
CI and hooks: `.gitea/workflows/ci.yml`, `.woodpecker.yml`, and `.githooks/pre-commit` all use `scripts/precommit-check.sh` to verify formatting, tests, and dictionary generation.