Skip to main content

The intelligent execution layer for AI agents — CLI interface

Project description

Keshro

Migration execution for AI coding agents. Structured plans, parallel execution, and cross-task learning for complex stack moves.

pip install keshro
keshro login              # opens browser to authenticate
keshro create             # scan project, generate plan
keshro config set --agent codex  # optional: default prompt agent
keshro continue --all     # agents execute in parallel

The problem

Your AI agent is good at one task at a time. Migrations are not one task.

An AWS Batch to Airflow move, Terraform to Pulumi rewrite, or Jenkins to GitHub Actions cutover usually means:

  • discovery across the repo and infrastructure definitions
  • migration-specific risks and open questions
  • staged execution with dependency ordering
  • multiple agents touching related code without stepping on each other

Run that manually and you're the bottleneck. Run it in parallel without coordination and agents conflict. The more edge cases the migration has, the worse this gets.

What it's built for

  • Stack and platform migrations — Express to Fastify, Terraform to Pulumi, Jenkins to GitHub Actions, AWS Batch to Airflow, Docker Compose to Kubernetes, and similar moves where configuration, runtime behavior, and rollout sequencing all change together.
  • Migration planning with execution attached — not just “what should we do,” but “what are the blockers, what still needs answering, and what should run first.”
  • Adjacent multi-task engineering work — monolith decomposition, infrastructure overhauls, auth refactors, and other projects where one agent session cannot hold all the context.

What Keshro does

  1. Builds a migration-aware plan — generates a dependency graph with task ordering, file assignments, acceptance criteria, migration risks, and open questions
  2. Runs agents in parallel — each in an isolated git worktree, respecting dependency order
  3. Shares context across tasks — when one agent discovers something, related future tasks inherit that knowledge
  4. Tracks everything — git checkpoints before each task, decision audit trails, one-command rollback

Create a migration

keshro create --path aws-batch-to-airflow               # migration template
keshro create --path aws-batch-to-airflow --agent codex # use Codex for discovery
keshro create                                           # detect migration intent from repo + prompt

Keshro scans the project, asks follow-up questions, and creates a migration with analysis, risks, open questions, and a linked execution plan. Use --agent claude, --agent codex, or save a default with keshro config set --agent ....

Create from other inputs

keshro create                                         # current directory
keshro create https://github.com/org/repo             # GitHub repo
keshro create https://github.com/org/repo/issues/42   # GitHub issue
keshro create https://linear.app/team/issue/PROJ-123  # Linear issue

Keshro can still create general execution plans from issues, repos, and freeform project descriptions, but migrations are the primary workflow.

Execute

Keshro drives the full execution loop — picks up the next task, gives the agent context, validates the result, marks it done, and moves to the next one. You don't manage it.

keshro continue                    # execute next task, then the next, then the next
keshro continue -m <migration-id>  # execute a migration by migration ID
keshro continue -p <plan-id>       # execute a standalone plan by plan ID
keshro continue --all              # run everything — parallel agents, each in its own worktree
keshro continue --all -c 10        # cap at 10 concurrent agents
keshro continue --dry-run          # preview what would run
keshro continue --no-parallel --agent codex

For migration workflows, use -m. Keshro resolves the migration ID to the linked execution plan behind the scenes. -p remains available for standalone plans and backward compatibility.

Monitor

keshro status                      # progress summary
keshro status --tui                # live terminal dashboard
keshro migration view <id>         # migration detail, risks, unknowns, linked plan
keshro explain <task-id>           # decision audit trail
keshro rollback <task-id>          # revert to pre-task state

Works with

Parallel execution currently requires Claude Code. Planning, migration intake, single-task resume prompts, task tracking, and the web dashboard work with any setup. If Claude is rate-limited during prompt-based flows, Keshro now suggests switching agents and supports a saved default via keshro config set --agent ....

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

keshro-0.1.7.tar.gz (91.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

keshro-0.1.7-py3-none-any.whl (74.3 kB view details)

Uploaded Python 3

File details

Details for the file keshro-0.1.7.tar.gz.

File metadata

  • Download URL: keshro-0.1.7.tar.gz
  • Upload date:
  • Size: 91.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for keshro-0.1.7.tar.gz
Algorithm Hash digest
SHA256 d6763ee4e44c6194cc63383f1926daed631d5c2ebe5b52c997a507d7a0efa6ff
MD5 a5074e485f72f89945dc750a850ea07b
BLAKE2b-256 db56c00f5f437519778dda62a66d02cfb4a41d6ae36efd6c3e70634178056280

See more details on using hashes here.

Provenance

The following attestation bundles were made for keshro-0.1.7.tar.gz:

Publisher: publish.yml on jlewitt1/keshro-cli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file keshro-0.1.7-py3-none-any.whl.

File metadata

  • Download URL: keshro-0.1.7-py3-none-any.whl
  • Upload date:
  • Size: 74.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for keshro-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 a8656d324ff2b26ef199592b84bd91c5537222af363665379ff71d6799718f1f
MD5 d291405517d22d709cb0392823dec30d
BLAKE2b-256 8e5d89671cca599fba296ef73e7c50c519b5d9676829b95a7f348a5df1a08078

See more details on using hashes here.

Provenance

The following attestation bundles were made for keshro-0.1.7-py3-none-any.whl:

Publisher: publish.yml on jlewitt1/keshro-cli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page