CLI: Projects & Tasks

Every Keito time entry needs a project and a task. The CLI can discover both and resolve friendly names into API IDs.

List Projects

keito projects list
keito projects list --json
keito projects list --limit 20

The CLI lists active projects in the current company. In table output you see the project ID, name, code, client, billable status, and active status.

Agents should prefer JSON:

keito projects list --json

Show One Project

keito projects show "Acme Website"
keito projects show ACME
keito projects show project_id_here --json

The project argument accepts:

InputExample
Project IDcmo1j2iwm0016ynap3fw2pcfw
Project nameAcme Website
Project codeACME

Resolution is case-insensitive.

List Tasks

keito projects tasks
keito projects tasks --json
keito projects tasks --limit 20

Tasks are workspace-global in Keito. They are not scoped to a single project, so any active task returned by keito projects tasks can be used with any active project that the user is allowed to access.

Use IDs in Automation

Humans can use names or codes:

keito time start --project "Acme Website" --task "Development"

Agents and scripts should use IDs after discovery:

keito time start \
  --project "project_id_here" \
  --task "task_id_here" \
  --json

IDs avoid ambiguity when project names or task names are similar.

Not Found Recovery

If a project cannot be resolved, the CLI exits with code 4 and suggests:

keito projects list --json

If a task cannot be resolved, the CLI exits with code 4 and suggests:

keito projects tasks --json