Task Playbook
Use this playbook when you want a repeatable operating pattern for coding agents. It is written to work with the current public tool surface and to avoid assumptions about optional prompts or resources.
Start of task
Use this when a new task begins or the task direction changes materially.
- Call
viberecall_get_status. - Confirm the active project and runtime look correct.
- Call
viberecall_get_context_packwith a concise task description. - If the task is about a specific service, component, or entity, call
viberecall_search_entities. - If needed, call
viberecall_get_neighborsfor a bounded dependency view.
Why:
- this catches wrong-project, stale-session, or unhealthy-runtime issues early
- this gives the agent broad context without flooding the runtime
- it keeps graph exploration anchored on a known entity
During investigation
Use this when the agent has identified a concrete finding.
- Save a meaningful observation with
viberecall_save_episode. - Use
viberecall_search_memoryonly if the current context is missing a needed detail.
Good observations include:
- architecture notes
- debugging discoveries
- a confirmed dependency
- a handoff summary worth reusing later
Do not save:
- repeated status updates
- speculative thoughts with no signal
- every interim code-reading note
Before a large refactor
Use this when the task depends on code structure, dependency maps, or recent repository changes.
- Call
viberecall_get_index_status. - If the index is stale or missing, decide whether the current workflow is trusted to trigger indexing.
- If not explicitly trusted, stop and ask the human.
- If trusted, trigger
viberecall_index_repo. - Wait until the index becomes ready.
- Refresh task context with
viberecall_get_context_pack.
This avoids starting a refactor with stale code context and avoids silent privilege expansion.
When project or environment scope is unclear
Use this when:
- the token may belong to another project
- the endpoint may point at the wrong environment
- the runtime health looks inconsistent with the task
- Stop broad tool usage.
- Re-run
viberecall_get_status. - If scope is still unclear, stop and ask the human.
Do not continue by guessing. Scope confusion creates bad memory and bad corrections quickly.
When correcting stale knowledge
Use this when a stored fact appears wrong or incomplete.
- Call
viberecall_explain_fact. - Inspect supporting episodes and lineage.
- Decide whether this workflow is explicitly trusted to correct canonical facts.
- If not explicitly trusted, stop and ask the human.
- If trusted and correction is justified, call
viberecall_update_fact.
Do not skip the explanation step. Correcting facts without reviewing provenance is how memory quality drifts.
When the task is entity-centric
Use this when the problem is tied to a specific component, service, or canonical concept.
- Call
viberecall_search_entities. - Pick the right entity.
- Call
viberecall_get_neighborsorviberecall_find_pathsas needed.
Avoid calling graph tools before you know the relevant entity. That is a common source of noisy retrieval.
When the work depends on local uncommitted code
Use this when the repository state only exists locally.
- Decide whether Git-based indexing is possible.
- If not, decide whether a workspace bundle or bridge path exists.
- If no explicit path exists, stop and ask the human.
- If a path exists, prepare the bundle or bridge flow.
- Call
viberecall_index_repowithrepo_source.type = "workspace_bundle".
Do not assume the hosted MCP server can inspect the local repository path directly.
After an important decision
When the task produces a durable conclusion:
- save a concise
viberecall_save_episodenote - include enough metadata to reconnect the note to the task later
This is the best moment to capture architecture decisions and debugging conclusions.
Anti-patterns
- Tool spam instead of scoped retrieval.
- Indexing on every task by default.
- Saving every intermediate thought.
- Skipping
viberecall_explain_factbefore correction. - Assuming the hosted memory service can see local files.
- Continuing when project, environment, or trust scope is unclear.