fno-agents 0.3.1

PTY supervisor substrate for persistent, attachable multi-CLI coding agents (codex, gemini, claude)
Documentation
# cline readiness manifest (x-83e7) - full-roster parity port from
# the reference manifest for cline per ADAPTING.md.
#
# UNVALIDATED + INERT: cline has no fno provider host (no build_pane_argv arm /
# provider impl), so scrape_targets never selects it and this manifest is
# bundled-but-dormant (like opencode). Markers are reference-derived, NOT pinned
# against a live cline TUI. Our engine is case-sensitive and the reference engine is not, so
# these lowercase needles under-fire until smoke-pinned - the conservative
# never-false-ready direction (readiness OQ#9). State vocab + arbitration: see
# codex.toml.
#
# Priority (highest wins): 300 tool_permission (blocked) > -10 default (working).
# default_cline_working is the reference's catch-all: any non-empty screen with no higher
# rule => working (never-idle). Conservative in our never-false-ready model.

min_engine_version = 1

[[rule]]
id = "tool_permission"
state = "blocked"
priority = 300
region = "whole_recent"
gate = { any = [
  { contains = "let cline use this tool" },
  { all = [ { contains = "[act mode]" }, { contains = "execute command?" }, { contains = "yes" } ] },
  { all = [ { contains = "[act mode]" }, { contains = "use this tool?" }, { contains = "yes" } ] },
  { all = [ { contains = "[plan mode]" }, { contains = "execute command?" }, { contains = "yes" } ] },
  { all = [ { contains = "[plan mode]" }, { contains = "use this tool?" }, { contains = "yes" } ] },
] }

[[rule]]
id = "default_cline_working"
state = "working"
priority = -10
region = "whole_recent"
gate = { regex = '(?s).+' }