Expand description
Ask: a read-only conversation beside every view (L0 of the ladder).
A conversation is one agentplane run on a plane of its own
(<project state>/ask): each message is delivered to it, it answers
with reading tools only and waits again. What a turn showed — reads,
checked citations, a proposal — is kept beside the journal as the
conversation’s thread, for the panel and speccoder ask to read back.
Nothing here writes to the project; a proposal is performed only when a
person confirms it, through the ordinary actions.
Re-exports§
pub use chips::ChipRef;
Modules§
- chips
- Chips: what is on screen, given to Ask as context. The engine resolves a feature, a task or a file range itself; anything else carries the words the view shows. Every chip gets a digest, so a changed one says so.
- proposal
- A
proposecall made a person’s action: code checks the target now and builds theRunnablethe sheet confirms. Nothing here performs it. - skill
speccoder.ask: a conversation is one run. It waits for the person’s message, answers through the governed tool loop with reading tools only, and waits again; a week without a message ends it.- tools
- Ask’s readers beyond the workspace tools: history, the journal’s account, evidence and the catalog of codes. Each reads through a runtime function or a fixed git argv — never a shell, never the network.
Structs§
Constants§
- MAX_
QUESTION - The longest question.
- PROPOSE
- The tool that suggests a change.
Functions§
- changed_
since - Whether
pathlinesstart–endno longer say what a read returned (content_sha256): read again with the same tool, so masking and the read cap are the same.Nonewhen the file cannot be read now. - conversations
- The project’s conversations, newest first;
featurenarrows them. - new_id
- A new conversation’s id (
c-…). - read_of
- What a tool call read, as the answer may cite it.
- results
- What conversation
id’s confirmed proposals created, from the origins they recorded: a quick change or bug fix (Asked), a promoted spec that carried it (PromotedFrom). Oldest first. - settings
[ask]from the text ofspeccoder.toml.- spent
- The tokens Ask’s conversations about
featureused: input, output and cache reads. - stop
- Stops conversation
id’s turn in flight in this process (None: every one — a new conversation has no id until its first turn ends): the model call streaming ends where it is, recorded and metered to there, with its words.false: none was. - thread
- One conversation with its turns.
- turn
- Answers
requestin the project atpathwith the model in itsspeccoder.toml([ask] model, else[model]). - turn_
tag - The progress tag of conversation
id’s turnn. - turn_
with turnwithprovideranswering.- valid_
id - Whether
idhas the shape speccoder gives a conversation (c-and hex): anything else names no file of the plane. - words
- Conversation
id’s questions and answers, word for word, and their digest: what promotion carries into a new spec.