consciousness/src/subconscious/agents
Kent Overstreet 0e6b5dc8be agent: phase-aware bail script for surface-observe concurrency
bail-no-competing.sh used to bail if any other live agent existed in
the state dir, period. That was too coarse: surface-observe agents run
a multi-step pipeline (surface → organize-search → organize-new →
observe), and the intent is to let a new surface-phase agent start
while an older one finishes its post-surface tail. With the old check
the newer agent always bailed, so surface-observe was effectively
serialized at the slowest cycle time.

Make the script phase-aware:

- oneshot.rs now passes the current phase as argv[2] alongside the pid
  file name. The script writes that phase into its own pid file on
  every step transition, so concurrent agents can read each other's
  phase just by cat'ing the pid files.

- Bail only when another live agent is in the same phase-group as us.
  Groups: "surface" vs. "everything else" (post-surface). At most one
  agent per group alive at a time — surface runs at a higher cadence
  than the organize/observe tail.

- Still clean up stale pid files for dead processes.

Co-Authored-By: Proof of Concept <poc@bcachefs.org>
2026-04-16 15:41:28 -04:00
..
bail-no-competing.sh agent: phase-aware bail script for surface-observe concurrency 2026-04-16 15:41:28 -04:00
calibrate.agent Convert {{node:KEY}} to {{tool: memory_render KEY}} in all agents 2026-04-10 15:22:49 -04:00
challenger.agent Move agent queries inline: {{nodes}} → {{tool: memory_query}} 2026-04-10 15:53:54 -04:00
compare.agent Convert {{node:KEY}} to {{tool: memory_render KEY}} in all agents 2026-04-10 15:22:49 -04:00
connector.agent Move agent queries inline: {{nodes}} → {{tool: memory_query}} 2026-04-10 15:53:54 -04:00
digest.agent digest.agent: document journal_update workflow 2026-04-12 02:06:55 -04:00
distill.agent Convert {{node:KEY}} to {{tool: memory_render KEY}} in all agents 2026-04-10 15:22:49 -04:00
evaluate.agent Convert {{node:KEY}} to {{tool: memory_render KEY}} in all agents 2026-04-10 15:22:49 -04:00
extractor.agent Move agent queries inline: {{nodes}} → {{tool: memory_query}} 2026-04-10 15:53:54 -04:00
health.agent Add graph_topology, graph_health, interference_pairs tools 2026-04-10 15:25:57 -04:00
journal.agent defs.rs: delete dead placeholders, simplify siblings 2026-04-13 01:37:33 -04:00
linker.agent Move agent queries inline: {{nodes}} → {{tool: memory_query}} 2026-04-10 15:53:54 -04:00
naming.agent Convert {{node:KEY}} to {{tool: memory_render KEY}} in all agents 2026-04-10 15:22:49 -04:00
organize.agent Convert {{node:KEY}} to {{tool: memory_render KEY}} in all agents 2026-04-10 15:22:49 -04:00
reflect.agent replace hardcoded personal names with config values 2026-04-02 19:45:35 -04:00
replay.agent Move agent queries inline: {{nodes}} → {{tool: memory_query}} 2026-04-10 15:53:54 -04:00
split.agent Convert {{node:KEY}} to {{tool: memory_render KEY}} in all agents 2026-04-10 15:22:49 -04:00
subconscious-journal.agent remove legacy feedback commands (used, wrong, gap, etc.) 2026-04-12 22:12:02 -04:00
subconscious-observe.agent improve observe.agent 2026-04-10 02:57:53 -04:00
subconscious-reflect.agent Shared persistent state across all subconscious agents 2026-04-07 19:23:08 -04:00
subconscious-surface.agent Shared persistent state across all subconscious agents 2026-04-07 19:23:08 -04:00
subconscious-thalamus.agent Split surface-observe into separate agents, add thalamus 2026-04-07 02:25:11 -04:00
surface-observe.agent tweak surface-observe prompt 2026-04-11 18:41:02 -04:00
thalamus.agent replace hardcoded personal names with config values 2026-04-02 19:45:35 -04:00
transfer.agent Move agent queries inline: {{nodes}} → {{tool: memory_query}} 2026-04-10 15:53:54 -04:00