dsh-factory-tools
v0.1.9
Published
Factory model tools, explicit run completion, and operating skill
Readme
dsh-factory-tools
Model-facing Consumers of the Factory domain plus a bundled factory Skill.
Global tools list complete workspace settings, tasks, standard/inbox flows, recurring run history, and live Sessions. They create draft or recurring tasks, create explicit flows from same-workspace task ids, start draft flows, update task fields/dependencies, set metadata instructions, sink or attach live Sessions, comment, and apply lifecycle actions. factory_create_task exposes finalizer roles and five-field cron recurrence; no stored-template tool or hard deletion exists.
The bundled skill directs the model to list before mutation, create graph nodes and dependency edges explicitly, group the relationship-complete set with factory_create_flow, inherit workspace policy unless an override is required, and preserve optional revisions. In an assigned run, an answerable human dependency goes through ask_user_question before factory_finish; the model waits for the answer, continues and verifies the work, then submits one terminal report in a later model step. A same-step completion report is rejected before settlement. blocked is reserved for intervention a direct question cannot resolve. After factory_finish, one final model step preserves a concise user-facing result; the scheduler commits its buffered report after whole-Agent idle, and an observed Session commits at that terminal response boundary after flushing the log.
Completion guidance is scoped rather than added to the standing system prompt. Scheduler assignments receive factory_finish with their run scope. An independently observed Session receives the tool only after Factory has adopted it and its first normal response reaches agent/turn-stopping. If that response has no report, Factory appends exactly one logged plugin notice in another step of the same turn:
The active Factory task has not been settled. If the assigned work is complete, call factory_finish now with the verified outcome and a concise summary; do not repeat the completed response. If work remains, continue it instead. Do not call factory_finish while a human answer is outstanding.
The notice is suppressed after max-token completion, after a report, after the first reminder in a turn, and whenever no active run remains. Errors and cancellation do not reach the normal stop hook, while a pending ask_user_question keeps the turn from reaching it. Terminal observed runs dispose their scoped tool and listener, so later user conversation receives neither the schema nor another reminder. If a submitted observed report cannot flush or settle, the run records that settlement failure rather than later claiming that factory_finish was never called. The notice is append-only context after the reusable request prefix; it costs zero tokens before a missing-report stop and remains reconstructable from the Session log with source {kind:'plugin', plugin:'dsh-factory'}.
