M4Human–Agent Workbench
M4 planning calculator · runs entirely in your browser

Stress-test your development plan
before launching agents.

Describe tasks, dependencies, and human checks. The calculator will show a feasible schedule, the speedup ceiling, and where more parallelism stops helping.

Scenario speedup1.18×
Model ceiling1.31×
Active constraintCritical path
Private by default. Unless you opt in to sharing, your configuration and results never leave your browser. All calculations run locally; no API request is made.
01

Let AI draft your model

Send this prompt and your project description to any AI assistant. It will ask clarifying questions and return JSON ready to import.

PROMPT · v1

Decomposition for M4

You are helping describe a software project for the M4 calculator, a phase-based model of one person working with several AI agents.

First ask clarifying questions if any of these are undefined: a shared acceptance criterion for the manual and AI-assisted scenarios, task dependencies, baseline effort without AI, how AI will be used, and mandatory human checks. Keep uncertainty explicit and do not present an estimate as a forecast.

For external calibration, use only empirical studies published in 2026; prefer June–August 2026 when available. Do not use coefficients from older experiments as defaults. If a recent source measures commits, merge rate, or time to merge rather than end-to-end time to an accepted result, mark the estimate as a proxy and explain the conversion.

Then:
1. Decompose the project into verifiable tasks with independent outcomes wherever that is substantively possible.
2. Do not add dependencies merely to impose an order: predecessors must reflect a real inability to start the task earlier.
3. Group similar tasks into classes. For each class, estimate aiCycleMultiplier = end-to-end time to an accepted result with AI / manual baseline. A value of 0.7 means a cycle 30% shorter than manual work; 1.2 means 20% longer.
4. Estimate humanFraction = the share of active human time inside the AI cycle, not a share of the manual baseline. For example, with k=0.7 and humanFraction=0.4, the human is active for 0.28 of the manual baseline and the agent for 0.42. Do not derive humanFraction automatically from k: it is a separate assumption.
5. Add evidence for every class and set kind to measured for directly comparable timing measurements, proxy for indirect metrics such as throughput, or assumption for expert judgment. Add publishedAt in YYYY-MM format for an external source; omit it for an unpublished assumption. If no reliable 2026 source exists, explicitly use assumption. Briefly explain the human share in humanFractionBasis.
6. Parameters c and gamma cannot be below 1. If coordination overhead is unknown, use 1 and explicitly warn that this is optimistic.
7. Return exactly one JSON object without Markdown or comments. IDs must be unique ASCII identifiers. Every predecessor must reference an existing ID, and the graph must be acyclic.

Result schema:
{
  "schemaVersion": "m4-calculator/v1",
  "projectName": "Project name",
  "timeUnit": "hours",
  "p": 3,
  "c": 1.0,
  "gamma": 1.0,
  "taskClasses": [
    {
      "id": "feature",
      "name": "Convenient class name",
      "aiCycleMultiplier": 0.7,
      "humanFraction": 0.4,
      "evidence": {
        "kind": "assumption",
        "label": "Expert estimate for this project",
        "note": "Why this coefficient was selected"
      },
      "humanFractionBasis": "Human work that remains inside the cycle"
    }
  ],
  "tasks": [
    {
      "id": "task-1",
      "classId": "feature",
      "name": "Optional short name",
      "description": "Optional description and acceptance criterion",
      "baselineEffort": 16,
      "predecessors": []
    }
  ]
}
The prompt asks the AI to state its assumptions explicitly and not present parameter estimates as measured forecasts.
JSON IMPORT

Paste the configuration

02

Review and refine the plan

Use the editor to review the AI-generated draft. Class parameters apply to every task of that type.

Research snapshot: 2026 · June–July prioritized. The k values are reference estimates derived from recent empirical studies, not universal coefficients. q, C(P), and γ(P) remain explicit assumptions.

Calibration sources and method3 publications · conversion formulas · limitations
01 · 2026-06

Generative AI and labour productivity: A quasi experiment on coding

Quasi-experiment with 1,219 developers: the M4-relevant result is an increase of roughly 22% in completed tasks. We use it as a proxy for end-to-end cycle time:

k₀ = 1 / (1 + 0.22) ≈ 0.82Gambacorta, Qiu, Shan & Rees · Journal of Financial Stability ↗
02 · 2026-07

When Code Authors Are Agents

Analysis of 40,214 PRs. We adjust k using merge rates: docs/style, 83.8% for agents vs 77.9% for humans; feature/behavior, 68.7% vs 77.4%; infrastructure, 72.9% vs 77.0%. This gives:

docs: 0.82 × 0.779 / 0.838 ≈ 0.76
feature: 0.82 × 0.774 / 0.687 ≈ 0.93
infra: 0.82 × 0.770 / 0.729 ≈ 0.87

Agents had a shorter overall time to merge, but we do not use it directly in k because it excludes framing, generation, and retries.

Njoku, Sharafi & Khomh · AIware ’26 ↗
03 · 2026-07

Does Working with AI Agents Change How Developers Code, Test, and Review?

Longitudinal difference-in-differences study with 669 developers and 228 controls. Reviews became faster and less detailed, but a similar shift appeared in control repositories. We therefore do not attribute a causal speedup to agents:

review & verification: k = 1.00Hamza, Siemon & Awan · SSRN ↗

Limitations. All coefficients are based on 2026 publications, but combining throughput and merge-rate evidence is a modeling choice. Project-specific measurements should take precedence over this example.

01
02
03
04
05
06
03

What limits the speedup

This is a scenario estimate for the entered parameters, not a delivery-date forecast.

Manual baseline · Tₕ86 h

The same accepted scope without AI

Schedule · T(π)72.98 h

Feasible schedule duration

Lower bound · B₄65.79 h

The model rules out a shorter duration

Speedup1.18× 1.31×

Scenario estimate → theoretical ceiling

ACTIVE CONSTRAINT

Critical path

W₄ / P load
27.97
L₄ critical path
65.79
γH human
54.95

Schedule gap to the bound: 7.18 h. Human queue: 13.22 h.

PARALLELISM SWEEP

Duration at different P

T(π)
83.91P=1
72.98P=2
72.98P=3
72.98P=4
72.98P=5
72.98P=6
TASK DAG

Critical path and dependencies

● critical path
L0
API contractcontract · 10 h
L1
Storage layerstorage · 18 hcontract
Business logiclogic · 24 hcontract
L2
Automated teststests · 16 hstorage, logic
L3
Change reviewreview · 10 htests
L4
Build and releaserelease · 8 hreview
RESOURCE-FEASIBLE SCHEDULE

Phases, queues, and occupied slots

72.98 h
Human
contractcontractlogicstoragelogicstorageteststestsreviewreviewreleaserelease
Agent 1
contractlogictestsreviewrelease
Agent 2
storage
Agent 3
Human phase Agent phase Agent slot reserved
MODEL DIAGNOSTICS

What to try next

  1. 01The critical path is binding: split or accelerate its tasks first.
  2. 02Phase queues create a material gap to the lower bound: improve launch order and human checkpoints.
  3. 03Parallelism overhead is included; compare several P values instead of choosing the maximum number of agents.