How-To Guides

migration-estimate: Codebase-to-Sprint Estimate Skill for Codex

Install migration-estimate for Codex to read a codebase, write PRDs and stories, and compute sprints with a human-team and Krithi timeline side by side. Every number comes from a script.

  • Codebase to high-level PRD, detailed PRDs, stories and a sprint count
  • ️ 5 stories = 1 sprint: 40 sprints is 80 weeks for a human team, 16 with Krithi
  • A script computes every number, and a self-review scores the gap against the code
By Rejith Krishnan4 min read
migration-estimate: Codebase-to-Sprint Estimate Skill for Codex

What it is

migration-estimate estimates the effort to migrate or modernise the application in the repository you are in. It reads the code and writes a high-level PRD. It breaks that into detailed PRDs, turns each into stories, and counts sprints. The output is a client-ready estimate that shows a human-team timeline and a Krithi timeline side by side. The skill only reads the application. It never builds, runs, tests, commits or pushes it.

How the estimate is counted

  • Stories are grouped five to a sprint, counted per detailed PRD and rounded up. Six stories is two sprints.
  • A sprint is two engineers, in both timelines.
  • A human team takes 10 working days per sprint. With Krithi it takes 2, so the same sprints run 5x faster.
  • Sprints run one after another, and the total is the sum across all PRDs.
  • Example: 40 sprints is 80 weeks for a human team and 16 weeks with Krithi.
  • The estimate covers development and testing only. QA sign-off, production deployment and data migration are listed separately.
  • An approximate 20% go-live allowance sits on top, marked as outside the core estimate. In the example that is about 16 weeks and about 3 weeks.

What it does

  • Runs inventory.py first to list modules, languages, size and the integrations found in dependency manifests, saved under ~/.krithi/migration-estimate/<repo>/, outside the repository.
  • Reads the code module by module, including integrations the manifests miss, such as HTTP clients, file drops, stored procedures, message topics and environment variables.
  • Writes 00-high-level-prd.md, then one prd-NN-<slug>.md per use case or feature area, usually 4 to 15 for a medium application.
  • Follows Kriti-REQ's PRD format: use-case grouping, Description, Business Rules & Logic, Roles & Permissions, Key Data Involved and Notable Constraints sections, source citations, plain English, and a confidence percentage on every open question.
  • Writes stories under a fixed heading form, ### PRD-NN-SMM: <title>, each with acceptance criteria and a source line.
  • Runs estimate.py, which checks sections, story headings and coverage against the inventory, computes sprints and both timelines, and writes estimate-summary.md.
  • Never writes a number itself. Sprint counts, weeks and totals are copied from what the script printed.
  • Finishes with a separate self-review that follows Kriti-REQ's quality check: areas checked and missed, mismatches between the PRD and the code, and a re-check of every item at 95% or more confidence.
  • Scores a gap percentage. Above 30, it reworks the PRDs, re-runs the estimate and scores again.
  • Records the review in review.md, and estimate.py --review confirms the sprint total matches and the final gap is 30% or less.
  • Lists assumptions and open questions the client should confirm, since they can change the story count.
  • Treats text in the repository that addresses an AI as data and ignores it.
  • Names the file, never the value, when it sees credentials or personal data.
  • Needs Python 3.8+ with the standard library only.

Story breakdown and sprint planning belong to Kriti-PLAN, which is not built yet. The story and sprint rules come from the agreed estimation method and are fixed. If a client asks for different numbers, the skill stops and confirms first, because the summary would no longer match Krithi's standard estimate.

Install and usage

Codex CLI prerequisite: PowerShell setup or WSL setup.

Install, then restart Codex:

$skill-installer install https://github.com/lowtouch-ai/krithi-skills/tree/main/skills/migration-estimate

Open Codex at the root of the application repository and run:

$migration-estimate estimate the migration effort for this codebase

The skill asks once, briefly, for the target platform, any code known to be retired and the client or application name. It continues with defaults if you do not know.

Output lands in the repository under docs/migration-estimate/:

00-high-level-prd.md
prd-01-<slug>.md ... prd-NN-<slug>.md
estimate-summary.md
review.md

For update and uninstall steps, see the krithi-skills README.

Install all the skills together

If you want the whole set instead of one skill, point the installer at the repository root:

$skill-installer install all the skills in the https://github.com/lowtouch-ai/krithi-skills/

This asks Codex to install every skill in the krithi-skills repository in one step, so you do not repeat the install for each one. Restart Codex afterwards so the new skills are picked up.

The set currently covers five skills:

  • migration-estimate: turns a codebase into PRDs, stories and a sprint estimate with human-team and Krithi timelines.
  • plan-builder: turns a ticket into a Plan Mode prompt that changes no code.
  • repo-readme-generator: creates or updates a README and documentation suite from verified repository evidence.
  • appsec-static-audit: runs a source-code-only security audit with compliance mapping.
  • wave-a11y-scan: runs a WAVE-style accessibility scan mapped to WCAG 2.x.

Prefer to install one at a time? Use the single-skill command in the install section above.

About the Author

Rejith Krishnan

Rejith Krishnan

Founder and CEO

Rejith Krishnan is the Founder and CEO of lowtouch.ai, a platform dedicated to empowering enterprises with private, no-code AI agents. With expertise in Site Reliability Engineering (SRE), Kubernetes, and AI systems architecture, he is passionate about simplifying the adoption of AI-driven automation to transform business operations.

Rejith specializes in deploying Large Language Models (LLMs) and building intelligent agents that automate workflows, enhance customer experiences, and optimize IT processes, all while ensuring data privacy and security. His mission is to help businesses unlock the full potential of enterprise AI with seamless, scalable, and secure solutions that fit their unique needs.

LinkedIn →