Expand description
slash_commands(), subagents(), subagent_cards(),
forge_commands(), file_index(), respect_gitignore(): what the
composer’s autocomplete triggers read, and the two sub-agent facts a
record draws its section from.
Three of them are facts about a session - what the CLI advertised, and what its conversation dispatched - so the core holds them and these verbs read through it. The other three have no session in them at all: forge’s own command table and the file walk are data a view reads, and the walk’s ignore preference is the user’s own, which the core reads on the walk’s behalf.
The emoji set is not here. Which shortcodes exist and which a query selects is the typeahead’s own business, so it lives with the typeahead rather than being handed to it.
The tests here read the two session facts through a fixture that
writes the core’s fields directly, so they pin the reads and not the
keeping: whether the init frame and commands_changed retain anything
at all is pinned by forge-workspace’s session-task tests.
Re-exports§
use forge_primitives::AvailableAgent;🔒use forge_primitives::AvailableCommand;🔒use forge_primitives::SessionSlot;🔒use crate::commands::ForgeCommand;🔒use crate::file_index::FileIndex;🔒use crate::surface::ViewSurface;🔒