Expand description
Local issue management tool backed by the .oxicode/issues/ store.
issue agent tool — agent-driven local issue management.
Implements oxicode_agent::AgentTool against the FileIssueStore. One
tool with an action discriminator (matches the pattern used by the
github tool, see oxicode-agent/src/tools/github.rs).
Actions: list, read, create, update, start, release, close,
link_session. See AgentTool::parameters_schema for the exact JSON
schema each action accepts.
Design notes:
- The tool holds an
Arc<FileIssueStore>so it can be cheaply cloned when the tool is registered in the liveToolRegistry(mirrors howMcpTool/WasmToolhold their managers). - The “current session id” used for assignment / session-linking is taken
from
ToolContext.session_id. The agent loop fills this in from the active session.
Structs§
- Issue
Tool - The
issuetool. One registration, multiple actions.
Functions§
- cas_
retry - Run an issue store mutation under bounded compare-and-set retry.
- format_
issue_ full - Render a full issue view (summary line + meta + body). Used by both the
agent tool and the CLI.
issues_diris the store’s issues directory — when the issue is assigned, the flock holder’s provenance (pid/host/cwd) is read from.alive/and appended; aNone/missing payload (older writer, dead session) simply omits the line. - format_
issue_ line - Render an issue as a single summary line (id, status, priority, lock, title, labels, assignee + assignment age). Used by both the agent tool and the CLI.