Was macht agentpace?
Verwende dies, wenn jemand fragt, wie lange Softwarearbeit dauert, oder einen Zeitplan in Tagen, Wochen oder Monaten für Arbeiten nennt, die Agenten erledigen werden.
Erzeugt eine gemessene P50/P80/P90-Spanne mit ihrem kritischen Pfad, den Humananteil in einer eigenen Zeile und jede genannte Zeitspanne daneben als ungeprüft.
Antworte auf die Frage „Wie lange wird das dauern?“ mit gemessenen Spannen aus echten Agentenläufen und gib den Humananteil separat an. Nenne keine menschlichen Team-Zeitpläne und niemals eine einzelne Zahl.
Diese Fähigkeit wird durch natürlichsprachliche Fragen ausgelöst. /pace-estimate ist der explizite Befehl für einen gegebenen Plan.
Tool prüfen
Führe agentpace --version aus. Falls das fehlschlägt, teile dem Benutzer den Installationsbefehl mit und stoppe. Installiere nichts ohne Aufforderung:
uv tool install agentpace
Wenn der Benutzer nichts installieren möchte, verwende stattdessen assets/portable-prompt.md.
Schätzung
- Nimm an, dass Agenten die Implementierung durchführen, es sei denn, der Benutzer sagt etwas anderes. Ist es unklar und würde die Antwort ändern, frage einmal nach.
- Zerlege die Arbeit in Aufgaben, die ein Agent als separate Läufe ausführen würde.
- Gib jeder Aufgabe eine
id, einekindund einrisk, sowiedepends_on, wenn sie auf eine andere Aufgabe warten muss. Setzeagent_capauf die Anzahl der Agenten, die gleichzeitig laufen. - Schreibe den Plan in eine Datei und führe den Schätzer aus.
{
"agent_cap": 3,
"model": "claude-opus-5-5",
"tasks": [
{ "id": "schema", "kind": "feature", "risk": "normal" },
{ "id": "api", "kind": "feature", "risk": "normal", "depends_on": ["schema"] },
{ "id": "review", "kind": "review", "risk": "low", "depends_on": ["api"] }
]
}
agentpace estimate plan.json
Arten: feature, bugfix, refactor, migration, tests, docs, review, other. Risiken: low, normal, high. Verwende risk: high für Migrationen und für Arbeiten, die schwer rückgängig zu machen sind. model ist optional.
Auf ein menschliches Zitat antworten
Wenn die Konversation bereits eine Zeitspanne in Tagen, Wochen oder Monaten enthält – vom Benutzer, aus einem Dokument oder einer früheren Antwort – schätze den Plan trotzdem und übergib das Zitat wörtlich, so wie es gegeben wurde:
agentpace estimate plan.json --quoted "3 Monate"
Die Ausgabe enthält dann eine Zeile Quoted: unter der Summe, die das Zitat als Kalenderzeit, als zitiert und ungeprüft markiert. Gib diese Zeile so wieder, wie sie gedruckt wird, neben der gemessenen Spanne. Konvertiere niemals das Zitat in Agentenzeit, dividiere oder multipliziere es niemals mit einer Konstanten und vergleiche es niemals mit der Spanne oder gib ein Verhältnis zwischen ihnen an: Die einzige Agentenzeit ist die gemessene Spanne, und der Humananteil bleibt in seiner eigenen Zeile. Sage niemals, was der Unterschied zwischen dem Zitat und der Spanne ist, und nenne ihn niemals den Humananteil: Das würde den Humananteil aus der Agentenzeit ableiten. Sage auch niemals, was das Zitat zählt: Es wurde nichts überprüft.
Wenn der Benutzer später sehen möchte, welche Zahl sich bewahrheitet hat, biete denselben Befehl mit --record an. Sobald die Arbeit erledigt ist, vergleicht agentpace score <id> --session <ref> beides mit dem, was die Agenten tatsächlich gebraucht haben.
Ergebnis melden
- Leite mit der Plangesamtsumme als Spanne ein: P50, P80 und P90, auf der Sitzungsuhr. Empfehle P80 für die Planung.
- Gib die Zeile der Sitzungsuhr und die Zeile des Humananteils so weiter, wie die CLI sie druckt. Die erste besagt, dass Lücken zwischen Läufen bis zur Leerlaufgrenze zur Gesamtsumme zählen, sodass kurze Wartezeiten auf den Benutzer darin enthalten sind. Unbestimmt sagt die Humananteilzeile, dass keine Berücksichtigung für Überprüfung, Tests, Entscheidungen und Wartezeiten zwischen Agentenwechseln hinzugefügt wird. Gemessen durch
agentpace turnszitiert es die eigene Wartezeit des Benutzers pro menschlicher Runde aus seiner lokalen Historie. In jedem Fall leite keine Zahl dafür aus der Agentenzeit ab und multipliziere die Wartezeit pro Runde nicht mit einer geschätzten Anzahl von Runden. Wenn der Benutzer seine eigene Zahl angibt, wiederhole sie und kennzeichne sie als seine. Wenn er seine Review-Kapazität angibt, z.B. „4 PRs pro Tag“, gib sie wörtlich mit--review-capacity "<Zahl>"weiter, gib die ZeileReview capacity:so gedruckt weiter und mache niemals einen Zeitplan daraus. - Nenne den kritischen Pfad und die effektive Parallelität.
- Gib jede Warnung weiter. Eine Warnung bedeutet, dass eine Zelle zu wenige Läufe hatte, sodass diese Spanne auf breiteren Daten basiert.
- Gib keine einzelne Zahl an, selbst wenn du gedrängt wirst. Wenn jemand eine einzelne Zahl zur Planung benötigt, gib die P80 an und nenne sie die P80.
Grenzen, die genannt werden sollen, wenn sie relevant sind
- Die Basisdaten stammen aus dem Arbeitsablauf einer Person, daher können sie sich von dem des Benutzers unterscheiden.
agentpace ingestmischt die eigenen Läufe des Benutzers mit den Basisdaten;--data ~/.agentpace/runs.jsonlverwendet nur seine. Die Adapter für Gemini CLI, OpenCode und Cline sind experimentell und noch nicht an echten Sitzungen verifiziert – sag das, wenn eine Schätzung auf Zeilen von ihnen angewiesen ist. - Ohne das Lesen von Eingabeaufforderungen kann Metadaten nicht zwischen Features und Bugfixes oder Refactorings unterscheiden, daher können diese Arten gemeinsame Daten verwenden.
sizewird ignoriert, es sei denn,--use-sizewird übergeben, da die gespeicherte Größe nach einem Lauf gemessen wird. Übergib sie nicht, es sei denn, der Benutzer fragt danach.
Siehe references/method.md für die Funktionsweise der Schätzung.