mirror of
https://github.com/google-gemini/gemini-cli
synced 2026-04-21 13:37:17 +00:00
Some checks are pending
Testing: E2E (Chained) / Parse run context (push) Blocked by required conditions
Testing: E2E (Chained) / set_pending_status (push) Blocked by required conditions
Testing: E2E (Chained) / E2E Test (Linux) - sandbox:docker (push) Blocked by required conditions
Testing: E2E (Chained) / E2E Test (Linux) - sandbox:none (push) Blocked by required conditions
Testing: E2E (Chained) / E2E Test (macOS) (push) Blocked by required conditions
Testing: E2E (Chained) / Merge Queue Skipper (push) Waiting to run
Testing: E2E (Chained) / download_repo_name (push) Waiting to run
Testing: E2E (Chained) / Slow E2E - Win (push) Blocked by required conditions
Testing: E2E (Chained) / Evals (ALWAYS_PASSING) (push) Blocked by required conditions
Testing: E2E (Chained) / E2E (push) Blocked by required conditions
Testing: E2E (Chained) / set_workflow_status (push) Blocked by required conditions
Testing: CI / Merge Queue Skipper (push) Waiting to run
Testing: CI / Lint (push) Blocked by required conditions
Testing: CI / Link Checker (push) Waiting to run
Testing: CI / Test (Linux) - 20.x, cli (push) Blocked by required conditions
Testing: CI / Test (Linux) - 20.x, others (push) Blocked by required conditions
Testing: CI / Test (Linux) - 22.x, cli (push) Blocked by required conditions
Testing: CI / Test (Linux) - 22.x, others (push) Blocked by required conditions
Testing: CI / Test (Linux) - 24.x, cli (push) Blocked by required conditions
Testing: CI / Test (Linux) - 24.x, others (push) Blocked by required conditions
Testing: CI / Test (Mac) - 20.x, cli (push) Blocked by required conditions
Testing: CI / Test (Mac) - 20.x, others (push) Blocked by required conditions
Testing: CI / Test (Mac) - 22.x, cli (push) Blocked by required conditions
Testing: CI / Test (Mac) - 22.x, others (push) Blocked by required conditions
Testing: CI / Test (Mac) - 24.x, cli (push) Blocked by required conditions
Testing: CI / Test (Mac) - 24.x, others (push) Blocked by required conditions
Testing: CI / CodeQL (push) Blocked by required conditions
Testing: CI / Check Bundle Size (push) Blocked by required conditions
Testing: CI / Slow Test - Win - cli (push) Blocked by required conditions
Testing: CI / Slow Test - Win - others (push) Blocked by required conditions
Testing: CI / CI (push) Blocked by required conditions
Trigger Docs Rebuild / trigger-rebuild (push) Waiting to run
Links / linkChecker (push) Waiting to run
On Merge Smoke Test / smoke-test (push) Waiting to run
61 lines
2.5 KiB
Markdown
61 lines
2.5 KiB
Markdown
# Tracker tools (`tracker_*`)
|
|
|
|
<!-- prettier-ignore -->
|
|
> [!NOTE]
|
|
> This is an experimental feature currently under active development.
|
|
|
|
The `tracker_*` tools allow the Gemini agent to maintain an internal, persistent
|
|
graph of tasks and dependencies for multi-step requests. This suite of tools
|
|
provides a more robust and granular way to manage execution plans than the
|
|
legacy `write_todos` tool.
|
|
|
|
## Technical reference
|
|
|
|
The agent uses these tools to manage its execution plan, decompose complex goals
|
|
into actionable sub-tasks, and provide real-time progress updates to the CLI
|
|
interface. The task state is stored in the `.gemini/tmp/tracker/<session-id>`
|
|
directory, allowing the agent to manage its plan for the current session.
|
|
|
|
### Available Tools
|
|
|
|
- `tracker_create_task`: Creates a new task in the tracker. You can specify a
|
|
title, description, and task type (`epic`, `task`, `bug`).
|
|
- `tracker_update_task`: Updates an existing task's status (`open`,
|
|
`in_progress`, `blocked`, `closed`), description, or dependencies.
|
|
- `tracker_get_task`: Retrieves the full details of a specific task by its
|
|
6-character hex ID.
|
|
- `tracker_list_tasks`: Lists tasks in the tracker, optionally filtered by
|
|
status, type, or parent ID.
|
|
- `tracker_add_dependency`: Adds a dependency between two tasks, ensuring
|
|
topological execution.
|
|
- `tracker_visualize`: Renders an ASCII tree visualization of the current task
|
|
graph.
|
|
|
|
## Technical behavior
|
|
|
|
- **Interface:** Updates the progress indicator and task tree above the CLI
|
|
input prompt.
|
|
- **Persistence:** Task state is saved automatically to the
|
|
`.gemini/tmp/tracker/<session-id>` directory. Task states are session-specific
|
|
and do not persist across different sessions.
|
|
- **Dependencies:** Tasks can depend on other tasks, forming a directed acyclic
|
|
graph (DAG). The agent must resolve dependencies before starting blocked
|
|
tasks.
|
|
- **Interaction:** Users can view the current state of the tracker by asking the
|
|
agent to visualize it, or by running `gemini-cli` commands if implemented.
|
|
|
|
## Use cases
|
|
|
|
- Coordinating multi-file refactoring projects.
|
|
- Breaking down a mission into a hierarchy of epics and tasks for better
|
|
visibility.
|
|
- Tracking bugs and feature requests directly within the context of an active
|
|
codebase.
|
|
- Providing visibility into the agent's current focus and remaining work.
|
|
|
|
## Next steps
|
|
|
|
- Follow the [Task planning tutorial](../cli/tutorials/task-planning.md) for
|
|
usage details and migration from the legacy todo list.
|
|
- Learn about [Session management](../cli/session-management.md) for context on
|
|
persistent state.
|