diff --git a/src/fabledassistant/mcp/server.py b/src/fabledassistant/mcp/server.py index bfd1cd3..e360897 100644 --- a/src/fabledassistant/mcp/server.py +++ b/src/fabledassistant/mcp/server.py @@ -89,6 +89,17 @@ summary, open tasks, and recent notes — everything you need to know the lay of the land before mutating. Don't call get_project + get_applicable_rules + a search separately when enter_project already composes them. +Don't wait to be told which project you're in. At the start of a session that +touches Scribe — or the moment work clearly belongs to a project but none is in +scope — bootstrap project context proactively: search for a related existing +project (search / list_projects, matching on the work's subject, the repo or +directory name, and recent activity). If you find a confident match, propose it +and call enter_project once the operator confirms. If nothing matches, offer to +create a project, confirming its name and goal first. Always confirm before +adopting or creating — never do either silently, and never guess a project into +existence. Once a project is in scope, the enter_project handshake and the +host-memory pointer step above both apply. + Plans are tasks with kind=plan, and Scribe is the canonical home for them. When you begin non-trivial work, call start_planning(project_id, title) FIRST — before any brainstorming, design, or plan-writing skill runs. start_planning