Skip to main content

Module folder

Module folder 

Source
Expand description

The folder codec: a home folder ⇄ World. The root is the default profile; profiles/<name>/ are the named ones; a profile folder is a complete home (Hermes’s rule). Two flavors of the same layout:

  • Orchestrator — ours: the O-blocks in config.yaml decode strictly, AGENTS.md is the persona, state.db holds our bindings table.
  • Hermes — a Hermes home: SOUL.md is the persona, state.db’s sessions rows become bindings (the multiplexed store partitioned by profile_name), and the file’s bytes may never be reused for our folder (they may carry inline credentials).

Files we own are re-emitted byte for byte when their record is unchanged and canonically when it changed; files we do not model are never touched.

Structs§

JobsForm
The form cron/jobs.json was read in, remembered for the emit.
LoadedHome
A loaded home.
ProfileIo
Per-profile bookkeeping: what a decompile needs to reuse bytes and to know what “unchanged” means. Never part of the world.

Enums§

Flavor
Which harness’s layout a folder was read as.

Constants§

OWNED_FILES
The files our folder owns.

Functions§

binding_from_hermes_session
A Hermes sessions row is a binding when it has a surface (session_key) or is a cron fire.
carry_unmodeled
Copy the named unmodeled files from src into dest, byte for byte, answering the relative paths carried. A file the source no longer holds is skipped: the list is what was seen at load, the copy is what is there now.
config_record
The record config.yaml’s bytes are the serialization of.
copy_unmodeled
Copy every unmodeled file of a profile from its source dir into dest, byte for byte.
empty_profile
The empty profile.
encode_access_file
access.yaml.
encode_config
Canonical config.yaml: O-blocks + Hermes-shaped blocks + residue.
encode_jobs_file
The pin’s canonical form is {"jobs": [...]}; a file read as a bare array keeps that form.
encode_subscriptions_file
webhook_subscriptions.json; secrets inlined only for a Hermes export.
load_home
Load a home folder.
persona_ref
A persona record for text: AGENTS.md at the profile root, content hash first.
save_home
Save OUR folder. Never deletes a file it does not own; never writes a secret outside .env.
write_executions
The executions ledger, written fresh.