@harness-lab/cli 0.2.8 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +34 -3
- package/assets/workshop-bundle/SKILL.md +28 -0
- package/assets/workshop-bundle/bundle-manifest.json +44 -52
- package/assets/workshop-bundle/content/challenge-cards/deck.md +19 -17
- package/assets/workshop-bundle/content/challenge-cards/locales/en/deck.md +7 -5
- package/assets/workshop-bundle/content/codex-craft.md +190 -0
- package/assets/workshop-bundle/content/facilitation/codex-setup-verification.md +5 -5
- package/assets/workshop-bundle/content/facilitation/master-guide.md +137 -67
- package/assets/workshop-bundle/content/project-briefs/code-review-helper.md +9 -9
- package/assets/workshop-bundle/content/project-briefs/devtoolbox-cli.md +11 -9
- package/assets/workshop-bundle/content/project-briefs/doc-generator.md +10 -8
- package/assets/workshop-bundle/content/project-briefs/locales/en/devtoolbox-cli.md +4 -2
- package/assets/workshop-bundle/content/project-briefs/locales/en/doc-generator.md +5 -3
- package/assets/workshop-bundle/content/project-briefs/locales/en/metrics-dashboard.md +4 -2
- package/assets/workshop-bundle/content/project-briefs/locales/en/standup-bot.md +4 -2
- package/assets/workshop-bundle/content/project-briefs/metrics-dashboard.md +14 -12
- package/assets/workshop-bundle/content/project-briefs/standup-bot.md +11 -9
- package/assets/workshop-bundle/content/talks/codex-demo-script.md +12 -10
- package/assets/workshop-bundle/content/talks/context-is-king.md +26 -23
- package/assets/workshop-bundle/docs/harness-cli-foundation.md +23 -11
- package/assets/workshop-bundle/docs/learner-resource-kit.md +37 -37
- package/assets/workshop-bundle/materials/coaching-codex.md +76 -0
- package/assets/workshop-bundle/materials/locales/en/participant-resource-kit.md +14 -2
- package/assets/workshop-bundle/materials/participant-resource-kit.md +23 -11
- package/assets/workshop-bundle/workshop-blueprint/README.md +2 -5
- package/assets/workshop-bundle/workshop-blueprint/day-structure.md +14 -0
- package/assets/workshop-bundle/workshop-skill/analyze-checklist.md +3 -3
- package/assets/workshop-bundle/workshop-skill/closing-skill.md +5 -5
- package/assets/workshop-bundle/workshop-skill/commands.md +13 -13
- package/assets/workshop-bundle/workshop-skill/facilitator.md +95 -0
- package/assets/workshop-bundle/workshop-skill/follow-up-package.md +13 -8
- package/assets/workshop-bundle/workshop-skill/install.md +8 -8
- package/assets/workshop-bundle/workshop-skill/locales/en/follow-up-package.md +8 -3
- package/assets/workshop-bundle/workshop-skill/locales/en/recap.md +8 -1
- package/assets/workshop-bundle/workshop-skill/locales/en/reference.md +19 -3
- package/assets/workshop-bundle/workshop-skill/locales/en/setup.md +1 -1
- package/assets/workshop-bundle/workshop-skill/recap.md +12 -5
- package/assets/workshop-bundle/workshop-skill/reference.md +45 -29
- package/assets/workshop-bundle/workshop-skill/setup.md +11 -11
- package/assets/workshop-bundle/workshop-skill/template-agents.md +4 -4
- package/package.json +1 -1
- package/src/client.js +18 -0
- package/src/io.js +11 -2
- package/src/run-cli.js +266 -8
- package/src/session-store.js +1 -0
- package/src/skill-install.js +108 -7
- package/src/workshop-bundle.js +48 -3
- package/assets/workshop-bundle/content/czech-editorial-review-checklist.md +0 -88
- package/assets/workshop-bundle/content/style-examples.md +0 -127
- package/assets/workshop-bundle/content/style-guide.md +0 -108
- package/assets/workshop-bundle/workshop-blueprint/edit-boundaries.md +0 -64
|
@@ -2,30 +2,32 @@
|
|
|
2
2
|
|
|
3
3
|
## Problém
|
|
4
4
|
|
|
5
|
-
Ve skoro každém týmu vznikají malé jednorázové skripty: na čištění logů, převody JSONu, dohledání podezřelých commitů nebo rychlé kontroly nad repem. Fungují chvíli, často jen u
|
|
5
|
+
Ve skoro každém týmu vznikají malé jednorázové skripty: na čištění logů, převody JSONu, dohledání podezřelých commitů nebo rychlé kontroly nad repem. Fungují chvíli, často jen u jednoho člověka, a po pár dnech už nikdo neví, jak je spustit nebo rozšířit.
|
|
6
6
|
|
|
7
|
-
Vaším úkolem je navrhnout CLI nástroj, který řeší několik běžných developerských úloh tak, aby přežil handoff na jiný tým.
|
|
7
|
+
Vaším úkolem je navrhnout CLI nástroj, který řeší několik běžných developerských úloh tak, aby přežil handoff na jiný tým a nerozsypal se po přidání dalšího commandu.
|
|
8
8
|
|
|
9
9
|
## User stories
|
|
10
10
|
|
|
11
11
|
- Jako vývojář chci jedním příkazem převést log nebo JSON do čitelné podoby.
|
|
12
12
|
- Jako vývojář chci rychle dohledat podezřelé commity, větve nebo změny bez ručního skládání git příkazů.
|
|
13
|
-
- Jako tým chci mít příkazy i
|
|
13
|
+
- Jako tým chci mít příkazy i způsob práce popsané tak, aby po rotaci mohl bez zmatku pokračovat někdo jiný.
|
|
14
14
|
|
|
15
15
|
## Architektonické poznámky
|
|
16
16
|
|
|
17
|
-
- Jazyk i
|
|
18
|
-
- Od začátku oddělte samotné příkazy od pomocných utilit a
|
|
19
|
-
- `AGENTS.md` má popsat build/test flow, konvence pro výstupy a
|
|
20
|
-
- Stejně důležitý jako funkční příkaz je i
|
|
17
|
+
- Jazyk i framework si zvolte sami, ale CLI musí být snadno spustitelné a snadno objevitelné.
|
|
18
|
+
- Od začátku oddělte samotné příkazy od pomocných utilit a konfigurace.
|
|
19
|
+
- `AGENTS.md` má popsat build/test flow, konvence pro výstupy a pravidla pro další rozšiřování.
|
|
20
|
+
- Stejně důležitý jako funkční příkaz je i runbook pro tým, který projekt převezme po obědě.
|
|
21
|
+
- Nejde o pytel skriptů. Jde o malý systém, ve kterém je jasné, kde přibude další command, test a dokumentace.
|
|
21
22
|
|
|
22
23
|
## Hotovo když
|
|
23
24
|
|
|
24
25
|
- Existují alespoň 3 užitečné příkazy nebo subcommands.
|
|
25
|
-
- `README` i `AGENTS.md` popisují lokální spuštění a
|
|
26
|
+
- `README` i `AGENTS.md` popisují lokální spuštění a způsob ověření.
|
|
26
27
|
- Je jasné, kde přidat další příkaz bez rozbití struktury projektu.
|
|
27
28
|
- Nový tým zvládne během 10 minut přidat nebo opravit další command.
|
|
29
|
+
- Každý command má aspoň jednu čitelnou ukázku vstupu a výstupu.
|
|
28
30
|
|
|
29
31
|
## První krok pro agenta
|
|
30
32
|
|
|
31
|
-
Nejdřív navrhni minimální architekturu, která přežije handoff. Začni `AGENTS.md`,
|
|
33
|
+
Nejdřív navrhni minimální architekturu, která přežije handoff. Začni `AGENTS.md`, flow pro přidání dalšího commandu a prvním ověřením. Teprve pak implementuj první command.
|
|
@@ -2,30 +2,32 @@
|
|
|
2
2
|
|
|
3
3
|
## Problém
|
|
4
4
|
|
|
5
|
-
Dokumentace stárne skoro okamžitě. Jakmile je její údržba čistě ruční, tým ji začne odkládat a
|
|
5
|
+
Dokumentace stárne skoro okamžitě. Jakmile je její údržba čistě ruční, tým ji začne odkládat a po pár iteracích už nikdo neví, jestli popisuje realitu. Po handoffu pak nový tým neví, čemu má věřit a co je jen odhad.
|
|
6
6
|
|
|
7
|
-
Vaším úkolem je navrhnout nástroj, který z
|
|
7
|
+
Vaším úkolem je navrhnout nástroj, který z projektu vygeneruje základní technickou dokumentaci nebo strukturovaný přehled tak, aby bylo zřejmé, co nástroj opravdu ví a co si jen domýšlí.
|
|
8
8
|
|
|
9
9
|
## User stories
|
|
10
10
|
|
|
11
|
-
- Jako vývojář chci z
|
|
12
|
-
- Jako reviewer chci během pár minut pochopit strukturu modulů a
|
|
11
|
+
- Jako vývojář chci z projektu rychle získat základní technickou dokumentaci bez ručního sepisování všeho od nuly.
|
|
12
|
+
- Jako reviewer chci během pár minut pochopit strukturu modulů a hlavní vstupní body.
|
|
13
13
|
- Jako tým po rotaci chci objevit architekturu projektu bez dlouhého pátrání po souvislostech.
|
|
14
14
|
|
|
15
15
|
## Architektonické poznámky
|
|
16
16
|
|
|
17
17
|
- Vstup může být lokální repo, seed adresář nebo zjednodušený dataset.
|
|
18
18
|
- Výstup může být Markdown, HTML nebo jednoduchý textový report.
|
|
19
|
-
- Důležité je vysvětlit, co nástroj umí spolehlivě odvodit a
|
|
19
|
+
- Důležité je vysvětlit, co nástroj umí spolehlivě odvodit a co je jen heuristika.
|
|
20
20
|
- Od začátku navrhněte strukturu tak, aby šlo časem přidat další typ výstupu.
|
|
21
|
+
- Neřešte AI show. Řešte důvěryhodnost, dohledatelnost a další safe move pro tým po handoffu.
|
|
21
22
|
|
|
22
23
|
## Hotovo když
|
|
23
24
|
|
|
24
25
|
- Nástroj vytvoří aspoň jednu čitelnou dokumentační stránku nebo report.
|
|
25
|
-
- Je jasné, jak se nástroj spouští lokálně a
|
|
26
|
+
- Je jasné, jak se nástroj spouští lokálně a nad jakým vstupem.
|
|
26
27
|
- Výstup odděluje fakta od odhadů nebo heuristik.
|
|
27
|
-
- Další tým umí přidat nový typ výstupu bez chaosu v
|
|
28
|
+
- Další tým umí přidat nový typ výstupu bez chaosu v repu.
|
|
29
|
+
- Reviewer během pár minut pozná, odkud které tvrzení pochází.
|
|
28
30
|
|
|
29
31
|
## První krok pro agenta
|
|
30
32
|
|
|
31
|
-
Nejdřív
|
|
33
|
+
Nejdřív napiš, jaké signály budeš z projektu číst, které výstupy budou jistota a které jen heuristika. Teprve potom navrhni první implementační slice.
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
Almost every team ends up with small one-off scripts for log cleanup, JSON conversion, suspicious commit lookup, or fast repo checks. They work for a while, often for one person only, and after a few days nobody remembers how to run or extend them.
|
|
6
6
|
|
|
7
|
-
Your task is to design a CLI tool that handles several common developer tasks in a way that survives handoff to another team.
|
|
7
|
+
Your task is to design a CLI tool that handles several common developer tasks in a way that survives handoff to another team and does not collapse the moment another command is added.
|
|
8
8
|
|
|
9
9
|
## User stories
|
|
10
10
|
|
|
@@ -18,6 +18,7 @@ Your task is to design a CLI tool that handles several common developer tasks in
|
|
|
18
18
|
- Separate commands from helper utilities and configuration from the start.
|
|
19
19
|
- `AGENTS.md` should describe the build and test flow, output conventions, and the rules for future extension.
|
|
20
20
|
- A runbook for the team that inherits the project after lunch matters as much as a working command.
|
|
21
|
+
- Do not build a bag of scripts. Build a small system where it is obvious where the next command, test, and doc belong.
|
|
21
22
|
|
|
22
23
|
## Done when
|
|
23
24
|
|
|
@@ -25,7 +26,8 @@ Your task is to design a CLI tool that handles several common developer tasks in
|
|
|
25
26
|
- `README` and `AGENTS.md` describe local execution and verification.
|
|
26
27
|
- It is clear where to add another command without breaking the project structure.
|
|
27
28
|
- A new team can add or fix another command within 10 minutes.
|
|
29
|
+
- Each command has at least one readable input/output example.
|
|
28
30
|
|
|
29
31
|
## First step for the agent
|
|
30
32
|
|
|
31
|
-
First design the minimal architecture that survives handoff. Start with `AGENTS.md`,
|
|
33
|
+
First design the minimal architecture that survives handoff. Start with `AGENTS.md`, the extension flow for another command, and the first verification step. Only then implement the first command.
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
## Problem
|
|
4
4
|
|
|
5
|
-
Documentation becomes stale almost immediately. Once maintenance is fully manual, the team starts postponing it, and after a few iterations nobody knows whether the docs still describe reality.
|
|
5
|
+
Documentation becomes stale almost immediately. Once maintenance is fully manual, the team starts postponing it, and after a few iterations nobody knows whether the docs still describe reality. After handoff, the next team no longer knows what to trust and what is only inference.
|
|
6
6
|
|
|
7
|
-
Your task is to design a tool that generates baseline technical documentation or a structured project overview from an existing codebase.
|
|
7
|
+
Your task is to design a tool that generates baseline technical documentation or a structured project overview from an existing codebase in a way that makes certainty and inference visibly different.
|
|
8
8
|
|
|
9
9
|
## User stories
|
|
10
10
|
|
|
@@ -18,6 +18,7 @@ Your task is to design a tool that generates baseline technical documentation or
|
|
|
18
18
|
- The output can be Markdown, HTML, or a simple text report.
|
|
19
19
|
- The important part is to explain what the tool can infer reliably and what remains heuristic.
|
|
20
20
|
- Design the structure from the start so another output type can be added later.
|
|
21
|
+
- Do not optimize for AI theatre. Optimize for trust, traceability, and a clear next safe move for a team after handoff.
|
|
21
22
|
|
|
22
23
|
## Done when
|
|
23
24
|
|
|
@@ -25,7 +26,8 @@ Your task is to design a tool that generates baseline technical documentation or
|
|
|
25
26
|
- It is clear how the tool runs locally and which input it expects.
|
|
26
27
|
- The output separates facts from estimates or heuristics.
|
|
27
28
|
- Another team can add a new output type without chaos in the repo.
|
|
29
|
+
- A reviewer can tell where each claim came from within minutes.
|
|
28
30
|
|
|
29
31
|
## First step for the agent
|
|
30
32
|
|
|
31
|
-
First
|
|
33
|
+
First define which project signals you will read and which outputs are certainty versus heuristic. Then propose the first implementation slice.
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
Teams often have the data, but not the screen that turns it into a readable shared view. Without that, decisions get harder, discussion gets noisier, and everyone walks away with a different interpretation of the numbers.
|
|
6
6
|
|
|
7
|
-
Your task is to design a simple dashboard that turns a handful of metrics into a clear shared view.
|
|
7
|
+
Your task is to design a simple dashboard that turns a handful of metrics into a clear shared view and stays understandable after handoff to another team.
|
|
8
8
|
|
|
9
9
|
## User stories
|
|
10
10
|
|
|
@@ -18,6 +18,7 @@ Your task is to design a simple dashboard that turns a handful of metrics into a
|
|
|
18
18
|
- Mobile-first is an advantage, but the dashboard must remain readable on a projected screen too.
|
|
19
19
|
- README and monitoring should explain what already works, what is still mock, and what is still missing.
|
|
20
20
|
- Design the structure so adding another metric does not require rewriting the whole screen.
|
|
21
|
+
- Do not optimize only for the look. Make the data model, layout rules, and verification path easy for another team to understand.
|
|
21
22
|
|
|
22
23
|
## Done when
|
|
23
24
|
|
|
@@ -25,7 +26,8 @@ Your task is to design a simple dashboard that turns a handful of metrics into a
|
|
|
25
26
|
- The repo documents the data sources and a mock fallback.
|
|
26
27
|
- It is clear where a new metric is added and how layout changes are verified.
|
|
27
28
|
- A new team can extend the dashboard without breaking the structure.
|
|
29
|
+
- The layout stays legible on mobile and on a larger screen, and the verification path says how to check that.
|
|
28
30
|
|
|
29
31
|
## First step for the agent
|
|
30
32
|
|
|
31
|
-
Design a dashboard that survives handoff. First describe the data model, components, and `Done When` criteria
|
|
33
|
+
Design a dashboard that survives handoff. First describe the data model, components, layout rules, and `Done When` criteria. Only then start building the UI.
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
Daily standups in chat often turn into a long thread with no structure. Blockers disappear in the noise, dependencies between people are hard to see, and after a few hours it is difficult to reconstruct what was actually agreed.
|
|
6
6
|
|
|
7
|
-
Your task is to design a tool that turns standup inputs into an overview people can continue working with.
|
|
7
|
+
Your task is to design a tool that turns standup inputs into an overview people can continue working with even without the original author or the original chat thread open.
|
|
8
8
|
|
|
9
9
|
## User stories
|
|
10
10
|
|
|
@@ -18,6 +18,7 @@ Your task is to design a tool that turns standup inputs into an overview people
|
|
|
18
18
|
- Mock data is fine if the workflow feels realistic and is documented clearly.
|
|
19
19
|
- Separate ingest, processing, and presentation of the output.
|
|
20
20
|
- Prompts, runbooks, and decisions must live in the repo, not only in the heads of the original team.
|
|
21
|
+
- Do not optimize for pretty summary prose before blockers, dependencies, and the next safe move are visible.
|
|
21
22
|
|
|
22
23
|
## Done when
|
|
23
24
|
|
|
@@ -25,7 +26,8 @@ Your task is to design a tool that turns standup inputs into an overview people
|
|
|
25
26
|
- The output highlights blockers or items that need attention.
|
|
26
27
|
- The repo explains how to connect the solution to a real chat or another input channel.
|
|
27
28
|
- After rotation, another team can continue without further explanation.
|
|
29
|
+
- It is clear what is certain summary versus heuristic suggestion.
|
|
28
30
|
|
|
29
31
|
## First step for the agent
|
|
30
32
|
|
|
31
|
-
Split the work into ingest, summarization, and context for the next team. First write the documentation the new team should open first
|
|
33
|
+
Split the work into ingest, summarization, and context for the next team. First write the data model, certainty-versus-heuristic rules, and the documentation the new team should open first. Then propose implementation steps.
|
|
@@ -2,30 +2,32 @@
|
|
|
2
2
|
|
|
3
3
|
## Problém
|
|
4
4
|
|
|
5
|
-
Týmy často data mají, ale chybí jim obrazovka, která z
|
|
5
|
+
Týmy často data mají, ale chybí jim obrazovka, která z nich udělá rychle čitelný přehled. Bez toho se hůř rozhoduje, hůř diskutuje a každý si z čísel odnese něco jiného.
|
|
6
6
|
|
|
7
|
-
Vaším úkolem je navrhnout jednoduchý dashboard, který z
|
|
7
|
+
Vaším úkolem je navrhnout jednoduchý dashboard, který z několika metrik vytvoří srozumitelný společný pohled a zůstane čitelný i po handoffu na jiný tým.
|
|
8
8
|
|
|
9
9
|
## User stories
|
|
10
10
|
|
|
11
|
-
- Jako tým chci zobrazit několik metrik na jedné obrazovce tak, aby z
|
|
11
|
+
- Jako tým chci zobrazit několik metrik na jedné obrazovce tak, aby z nich šlo rychle vyčíst stav.
|
|
12
12
|
- Jako facilitátor chci snadno měnit seed data bez zásahu do UI logiky.
|
|
13
|
-
- Jako tým po rotaci chci během několika minut pochopit strukturu dat, komponent i
|
|
13
|
+
- Jako tým po rotaci chci během několika minut pochopit strukturu dat, komponent i obrazovek.
|
|
14
14
|
|
|
15
15
|
## Architektonické poznámky
|
|
16
16
|
|
|
17
|
-
- Seed data a
|
|
18
|
-
- Mobile-first je výhoda, ale dashboard musí být dobře čitelný i
|
|
19
|
-
- README a
|
|
20
|
-
- Myslete na to, aby přidání další metriky nevedlo k
|
|
17
|
+
- Seed data a UI oddělte hned od prvního commitu.
|
|
18
|
+
- Mobile-first je výhoda, ale dashboard musí být dobře čitelný i na projekci.
|
|
19
|
+
- README a monitoring mají vysvětlit, co už funguje, co je mock a co zatím chybí.
|
|
20
|
+
- Myslete na to, aby přidání další metriky nevedlo k přepisování celé obrazovky.
|
|
21
|
+
- Neoptimalizujte jen vzhled. Hlídejte, aby nový tým rychle pochopil datový model, layout pravidla a způsob ověření.
|
|
21
22
|
|
|
22
23
|
## Hotovo když
|
|
23
24
|
|
|
24
|
-
- Dashboard ukáže alespoň 3 metriky a
|
|
25
|
-
- Repo popisuje datové zdroje i
|
|
26
|
-
- Je jasné, kde se přidává nová metrika a
|
|
25
|
+
- Dashboard ukáže alespoň 3 metriky a jeden trend nebo srovnání.
|
|
26
|
+
- Repo popisuje datové zdroje i mock fallback.
|
|
27
|
+
- Je jasné, kde se přidává nová metrika a jak se ověřuje layout.
|
|
27
28
|
- Nový tým zvládne rozšířit dashboard bez rozbití struktury.
|
|
29
|
+
- Layout je čitelný na mobilu i na větší obrazovce a je jasné, jak to ověřit.
|
|
28
30
|
|
|
29
31
|
## První krok pro agenta
|
|
30
32
|
|
|
31
|
-
Navrhni dashboard, který zvládne handoff. Nejdřív popiš datový model, komponenty a
|
|
33
|
+
Navrhni dashboard, který zvládne handoff. Nejdřív popiš datový model, komponenty, layout pravidla a kritéria `Hotovo když`, teprve potom stav UI.
|
|
@@ -2,30 +2,32 @@
|
|
|
2
2
|
|
|
3
3
|
## Problém
|
|
4
4
|
|
|
5
|
-
Denní standupy v
|
|
5
|
+
Denní standupy v chatu často končí jako dlouhé vlákno bez struktury. Blokery zapadnou, návaznosti mezi lidmi nejsou vidět a po pár hodinách už se těžko dohledává, co se vlastně domluvilo.
|
|
6
6
|
|
|
7
|
-
Vaším úkolem je navrhnout nástroj, který ze standup vstupů vytvoří přehled, se kterým se dá dál pracovat.
|
|
7
|
+
Vaším úkolem je navrhnout nástroj, který ze standup vstupů vytvoří přehled, se kterým se dá dál pracovat i bez původního autora nebo bez otevřeného původního vlákna.
|
|
8
8
|
|
|
9
9
|
## User stories
|
|
10
10
|
|
|
11
11
|
- Jako team lead chci sesbírat standup odpovědi do jednoho přehledného souhrnu.
|
|
12
|
-
- Jako vývojář chci rychle vidět blokery, dependency a
|
|
13
|
-
- Jako tým po rotaci chci pochopit datový tok i
|
|
12
|
+
- Jako vývojář chci rychle vidět blokery, dependency a témata, která potřebují domluvu.
|
|
13
|
+
- Jako tým po rotaci chci pochopit datový tok i integrační body bez ústního handoffu.
|
|
14
14
|
|
|
15
15
|
## Architektonické poznámky
|
|
16
16
|
|
|
17
17
|
- Upřednostněte jasný datový model před složitou integrací.
|
|
18
|
-
- Mock data jsou v
|
|
19
|
-
- Oddělte ingest, zpracování a
|
|
20
|
-
- Prompty, runbooky a
|
|
18
|
+
- Mock data jsou v pořádku, pokud workflow působí realisticky a je dobře popsané.
|
|
19
|
+
- Oddělte ingest, zpracování a prezentaci výstupu.
|
|
20
|
+
- Prompty, runbooky a rozhodnutí musí být uložené v repu, ne jen v hlavách původního týmu.
|
|
21
|
+
- Neřešte „hezký summary text“ dřív než to, jestli jsou vidět blokery, dependency a další safe move.
|
|
21
22
|
|
|
22
23
|
## Hotovo když
|
|
23
24
|
|
|
24
|
-
- Nástroj umí ingestovat seed data a
|
|
25
|
+
- Nástroj umí ingestovat seed data a vytvořit čitelný souhrn.
|
|
25
26
|
- Výstup zvýrazní blokery nebo položky, které potřebují pozornost.
|
|
26
27
|
- Repo obsahuje instrukce, jak řešení napojit na reálný chat nebo jiný vstupní kanál.
|
|
27
28
|
- Po rotaci lze navázat bez dalšího vysvětlování.
|
|
29
|
+
- Je jasné, co je jisté shrnutí a co je jen heuristika nebo návrh.
|
|
28
30
|
|
|
29
31
|
## První krok pro agenta
|
|
30
32
|
|
|
31
|
-
Rozděl práci na ingest, sumarizaci a
|
|
33
|
+
Rozděl práci na ingest, sumarizaci a kontext pro další tým. Nejdřív napiš datový model, jistoty vs. heuristiky a dokumentaci, kterou nový tým otevře jako první. Až potom navrhni implementační kroky.
|
|
@@ -2,15 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
## Cíl
|
|
4
4
|
|
|
5
|
-
Jedna příběhová ukázka, ne seznam funkcí. Publikum má během 15 minut pochopit, jak vypadá dobrý workflow s
|
|
5
|
+
Jedna příběhová ukázka, ne seznam funkcí. Publikum má během 15 minut pochopit, jak vypadá dobrý workflow s agentem a proč tenhle repozitář drží pohromadě díky harnessu, ne díky improvizaci.
|
|
6
6
|
|
|
7
7
|
## Příběh
|
|
8
8
|
|
|
9
|
-
„Jsem vývojář, dostal jsem malý úkol a
|
|
9
|
+
„Jsem vývojář, dostal jsem malý úkol a nechci být s agentem jen někdo, kdo zkouší další prompt. Chci postavit pracovní systém, který unese další iterace, review i převzetí jiným člověkem.“
|
|
10
10
|
|
|
11
11
|
## Flow
|
|
12
12
|
|
|
13
|
-
1. Otevři jednoduchý repozitář nebo
|
|
13
|
+
1. Otevři jednoduchý repozitář nebo přímo Harness Lab slice, na kterém je vidět `README`, `AGENTS.md`, rozpad práce do kroků a způsob kontroly změny.
|
|
14
14
|
2. Ukaž, že bez kontextu agent rychle tápe.
|
|
15
15
|
3. Vytvoř `AGENTS.md` se 4 prvky:
|
|
16
16
|
- Goal
|
|
@@ -18,12 +18,13 @@ Jedna příběhová ukázka, ne seznam funkcí. Publikum má během 15 minut poc
|
|
|
18
18
|
- Constraints
|
|
19
19
|
- Done When
|
|
20
20
|
4. Spusť `/plan`, aby agent rozpadl práci na kroky.
|
|
21
|
-
5.
|
|
22
|
-
6.
|
|
23
|
-
7.
|
|
24
|
-
|
|
25
|
-
-
|
|
26
|
-
|
|
21
|
+
5. Krátce ukaž, jak se v repu propisuje záměr: kde je mapa, kde je další bezpečný krok a kde je vidět, že tenhle repozitář vznikal jako continuation-ready systém.
|
|
22
|
+
6. Nech agenta implementovat malý kus.
|
|
23
|
+
7. Spusť `/review` a ukaž, že kontrola je součást workflow, ne nouzová brzda na konci.
|
|
24
|
+
8. Krátce ukaž workshop skill:
|
|
25
|
+
- jak se instaluje přes `harness skill install`
|
|
26
|
+
- jak z něj plyne první použitelný krok v Codexu nebo v pi
|
|
27
|
+
9. Zavři to větou:
|
|
27
28
|
- „Nástroj sám nestačí. Rozhoduje pracovní systém kolem něj.“
|
|
28
29
|
|
|
29
30
|
## Fallbacky
|
|
@@ -37,7 +38,8 @@ Jedna příběhová ukázka, ne seznam funkcí. Publikum má během 15 minut poc
|
|
|
37
38
|
- pět různých režimů práce
|
|
38
39
|
- složitou přehlídku funkcí
|
|
39
40
|
- dlouhé čekání na generování
|
|
41
|
+
- demo odtržené od repa, ve kterém právě workshop běží
|
|
40
42
|
|
|
41
43
|
## Pointa pro místnost
|
|
42
44
|
|
|
43
|
-
Nejde o
|
|
45
|
+
Nejde o to ukázat „kouzelný výsledek“. Jde o to ukázat, jak rychle roste kvalita, když přidáme kontext, plán, review a repozitář postavený tak, aby se v něm dalo pokračovat.
|
|
@@ -2,25 +2,25 @@
|
|
|
2
2
|
|
|
3
3
|
## Otevírací modul
|
|
4
4
|
|
|
5
|
-
Tenhle workshop skill i
|
|
5
|
+
Tenhle workshop skill i dashboard vznikly stejným způsobem, jakým dnes budeme pracovat my: s AI agentem, ale s důrazem na kontext. Nejde mi o prodej nástroje. Jde mi o to ukázat disciplínu, která z nástroje dělá použitelného spolupracovníka.
|
|
6
6
|
|
|
7
|
-
Rámec pro
|
|
7
|
+
Rámec pro otevření dne:
|
|
8
8
|
|
|
9
|
-
- dnes nezačínáme tool demo ani soutěž v
|
|
10
|
-
- budeme se učit, stavět, předávat i
|
|
11
|
-
- odpoledne se ukáže, co z
|
|
9
|
+
- dnes nezačínáme tool demo ani soutěž v promptování
|
|
10
|
+
- budeme se učit, stavět, předávat i přebírat
|
|
11
|
+
- odpoledne se ukáže, co z práce přežije bez nás
|
|
12
12
|
|
|
13
13
|
## Klíčová linka
|
|
14
14
|
|
|
15
|
-
Harness engineering je práce s
|
|
15
|
+
Harness engineering je práce s instrukcemi, kontextem a workflow tak, aby agent dělal správné věci opakovaně a předvídatelně. Team lead přece neříká každých třicet sekund jednomu vývojáři, co má dělat. Staví systém, ve kterém tým funguje. A přesně tohle dnes budeme dělat pro agenty.
|
|
16
16
|
|
|
17
17
|
Moje hlavní věta pro dnešek:
|
|
18
18
|
|
|
19
|
-
> Neučíme se
|
|
19
|
+
> Neučíme se „lépe promptovat". Učíme se postavit repo a workflow, ve kterém agent i cizí tým dokážou bezpečně pokračovat.
|
|
20
20
|
|
|
21
21
|
## Analogický beat
|
|
22
22
|
|
|
23
|
-
Když dáte lidem stejné kostky, nevznikne jedna správná kachna. Stejně tak ze stejného modelu nevzniká jedna správná práce. Rozdíl nedělá jen model. Rozdíl dělá kontext, mantinely, ověřování a
|
|
23
|
+
Když dáte lidem stejné kostky, nevznikne jedna správná kachna. Stejně tak ze stejného modelu nevzniká jedna správná práce. Rozdíl nedělá jen model. Rozdíl dělá kontext, mantinely, ověřování a představivost týmu.
|
|
24
24
|
|
|
25
25
|
Pointa analogie:
|
|
26
26
|
|
|
@@ -30,7 +30,9 @@ Pointa analogie:
|
|
|
30
30
|
|
|
31
31
|
## Mikro-cvičení
|
|
32
32
|
|
|
33
|
-
|
|
33
|
+
Tohle je krátká facilitátorova ukázka, ne práce pro celou místnost.
|
|
34
|
+
|
|
35
|
+
Vezmeme stejný malý task ve dvou podmínkách. Jedna varianta bude prompt blob. Druhá varianta bude krátké zadání se 4 prvky a s odkazem na kontext zapsaný v repu. Pak porovnáme výsledky. Nehledáme „nejhezčí prompt“. Hledáme způsob práce, který přenese záměr, omezení a done criteria i do dalšího kroku.
|
|
34
36
|
|
|
35
37
|
4 prvky pro druhou variantu:
|
|
36
38
|
|
|
@@ -42,33 +44,34 @@ Všichni dostanou stejný malý task. Jedna varianta bude prompt blob. Druhá va
|
|
|
42
44
|
## Hlavní teze
|
|
43
45
|
|
|
44
46
|
- Kontext je páka, ne kosmetika.
|
|
45
|
-
- `AGENTS.md`, skills a
|
|
47
|
+
- `AGENTS.md`, skills a runbooky jsou týmová infrastruktura.
|
|
46
48
|
- `AGENTS.md` nemá být encyklopedie. Má to být mapa, která ukáže, kam sáhnout dál.
|
|
47
|
-
- Co není v
|
|
49
|
+
- Co není v repu, neexistuje. Slack, ústní dovysvětlení a "to si pamatujeme" se při návaznosti rozpadají.
|
|
48
50
|
- Testy jsou hranice důvěry. Když agent pracuje samostatněji, musíte mnohem líp ověřovat, že udělal právě to, co jste chtěli.
|
|
49
|
-
- Jednoduché mantinely zrychlují práci. Agentovi pomáhá jasný build/test flow, viditelné hranice a
|
|
50
|
-
- U
|
|
51
|
-
- „Nech model jezdit v
|
|
52
|
-
-
|
|
53
|
-
- Úklid není bonus po workshopu. Když narazíte na opakující se chaos, je čas ho proměnit v
|
|
54
|
-
- Odpolední návaznost prověří, jestli váš kontext funguje i
|
|
51
|
+
- Jednoduché mantinely zrychlují práci. Agentovi pomáhá jasný build/test flow, viditelné hranice a předvídatelná struktura.
|
|
52
|
+
- U UI práce je výchozí pattern: agent exploration, potom repeatable browser test, potom lidské review.
|
|
53
|
+
- „Nech model jezdit v mém běžném přihlášeném browseru“ není výchozí doporučení. Bezpečnější je izolované lokální prostředí a jasné mantinely.
|
|
54
|
+
- Ověření napsané dřív, než pustíte agenta do většího kusu práce, není test-first dogma. Je to zápis done criteria do formy, kterou agent i další tým umí zkontrolovat. Iteraci to zrychluje, protože agent dostane přesné mantinely, ne další prompt.
|
|
55
|
+
- Úklid není bonus po workshopu. Když narazíte na opakující se chaos, je čas ho proměnit v lepší template, ověření nebo runbook.
|
|
56
|
+
- Odpolední návaznost prověří, jestli váš kontext funguje i bez vás.
|
|
55
57
|
|
|
56
58
|
## Co chci, aby si adoptovali
|
|
57
59
|
|
|
58
|
-
- Než začnu generovat další funkci, udělám z
|
|
60
|
+
- Než začnu generovat další funkci, udělám z repa místo, kde se dá orientovat.
|
|
59
61
|
- Když řekneme nějaké pravidlo dvakrát nahlas, patří do repa.
|
|
60
62
|
- Když agent dělá víc, já musím lépe ověřovat.
|
|
61
63
|
- Handoff není závěr dne. Je to průběžná podmínka celé práce.
|
|
62
64
|
|
|
63
65
|
## Most do Build fáze 1
|
|
64
66
|
|
|
65
|
-
Po tomhle talku se tým nemá vracet k
|
|
67
|
+
Po tomhle talku se tým nemá vracet k repu s pocitem, že potřebuje jen chytřejší prompt. Má se vracet s jedním jasným očekáváním:
|
|
66
68
|
|
|
67
|
-
-
|
|
68
|
-
-
|
|
69
|
-
- potom
|
|
69
|
+
- pokud ještě nemá workshop skill, teď je chvíle na `harness skill install`, pak `Codex: $workshop setup` nebo `pi: /skill:workshop`
|
|
70
|
+
- nejdřív krátká mapa v repu
|
|
71
|
+
- potom krátký plán kroků
|
|
72
|
+
- potom první explicitní ověření
|
|
70
73
|
- teprve potom další feature motion
|
|
71
74
|
|
|
72
75
|
## Závěr
|
|
73
76
|
|
|
74
|
-
Odpoledne nezažijete jen to, že „AI někdy funguje a
|
|
77
|
+
Odpoledne nezažijete jen to, že „AI někdy funguje a někdy ne“. Zažijete, jak moc výsledek závisí na kvalitě pracovního systému, který kolem agenta postavíte.
|
|
@@ -8,7 +8,7 @@ Current implementation in this repo:
|
|
|
8
8
|
|
|
9
9
|
- lives in the repository `harness-cli/` package and ships publicly as `@harness-lab/cli`
|
|
10
10
|
- distributes a portable participant workshop skill bundle through `harness skill install`
|
|
11
|
-
- covers `auth login/logout/status` plus `workshop status/list-instances/show-instance/create-instance/update-instance/reset-instance/prepare/remove-instance/archive/phase set`
|
|
11
|
+
- covers `auth login/logout/status` plus `workshop current-instance/select-instance/status/list-instances/show-instance/create-instance/update-instance/reset-instance/prepare/remove-instance/archive/phase set`
|
|
12
12
|
- targets the existing shared dashboard facilitator APIs
|
|
13
13
|
- is tested for browser/device auth, local-dev Basic Auth fallback, and cookie-backed Neon bootstrap fallback
|
|
14
14
|
- stores sessions in a local file under `HARNESS_CLI_HOME` or `~/.harness` by default
|
|
@@ -38,9 +38,12 @@ Required commands:
|
|
|
38
38
|
- `harness auth login`
|
|
39
39
|
- `harness auth logout`
|
|
40
40
|
- `harness auth status`
|
|
41
|
+
- `harness workshop current-instance`
|
|
42
|
+
- `harness workshop select-instance <instance-id>`
|
|
41
43
|
- `harness workshop status`
|
|
42
44
|
- `harness workshop list-instances`
|
|
43
45
|
- `harness workshop show-instance <instance-id>`
|
|
46
|
+
- `harness workshop participant-access [<instance-id>]`
|
|
44
47
|
- `harness workshop create-instance`
|
|
45
48
|
- `harness workshop update-instance`
|
|
46
49
|
- `harness workshop reset-instance <instance-id>`
|
|
@@ -85,33 +88,42 @@ Current auth layering:
|
|
|
85
88
|
Current target-selection order:
|
|
86
89
|
|
|
87
90
|
1. an explicit command or route instance id
|
|
88
|
-
2. the
|
|
91
|
+
2. the CLI-local persisted selection set by `harness workshop select-instance`
|
|
89
92
|
3. the deployment default `HARNESS_WORKSHOP_INSTANCE_ID`
|
|
90
93
|
4. a repository fallback only on surfaces that intentionally present a workspace-level default
|
|
91
94
|
|
|
92
95
|
Current command posture:
|
|
93
96
|
|
|
94
97
|
- explicit workspace-discovery commands:
|
|
98
|
+
- `harness workshop current-instance`
|
|
99
|
+
- `harness workshop select-instance <instance-id>`
|
|
95
100
|
- `harness workshop list-instances`
|
|
96
|
-
- explicit target
|
|
97
|
-
- `harness workshop show-instance <instance-id
|
|
98
|
-
-
|
|
99
|
-
- `harness workshop update-instance <instance-id
|
|
100
|
-
- `harness workshop reset-instance <instance-id
|
|
101
|
-
- `harness workshop prepare <instance-id
|
|
102
|
-
- `harness workshop remove-instance <instance-id
|
|
101
|
+
- explicit target preferred but selected-instance fallback allowed:
|
|
102
|
+
- `harness workshop show-instance [<instance-id>]`
|
|
103
|
+
- `harness workshop participant-access [<instance-id>]`
|
|
104
|
+
- `harness workshop update-instance [<instance-id>]`
|
|
105
|
+
- `harness workshop reset-instance [<instance-id>]`
|
|
106
|
+
- `harness workshop prepare [<instance-id>]`
|
|
107
|
+
- `harness workshop remove-instance [<instance-id>]`
|
|
103
108
|
- explicit target is the created resource:
|
|
104
109
|
- `harness workshop create-instance [<instance-id>]`
|
|
105
|
-
- deployment-default target:
|
|
110
|
+
- selected-instance target first, otherwise deployment-default target:
|
|
106
111
|
- `harness workshop status`
|
|
107
|
-
- `harness workshop archive`
|
|
108
112
|
- `harness workshop phase set <phase-id>`
|
|
113
|
+
- deployment-default target:
|
|
114
|
+
- `harness workshop archive`
|
|
109
115
|
|
|
110
116
|
Current discoverability path:
|
|
111
117
|
|
|
112
118
|
- facilitators can inspect available workshop instances through the dashboard workspace view
|
|
113
119
|
- the same platform-scoped list lives behind the authenticated instances API surface at `/api/workshop/instances`
|
|
114
120
|
- the CLI should expose that list directly so facilitator skills do not need session-file inspection or raw authenticated scripts for routine discovery
|
|
121
|
+
- the CLI should also expose a local current-target selector so repeated facilitator work does not depend on ambient dashboard selection or deployment-default routing
|
|
122
|
+
|
|
123
|
+
Machine-readable posture:
|
|
124
|
+
|
|
125
|
+
- facilitator commands should support `--json` for strict machine parsing without headings or prose wrappers
|
|
126
|
+
- skills and agents should prefer `harness --json ...` over scraping human-oriented terminal formatting
|
|
115
127
|
|
|
116
128
|
For the current facilitator lifecycle slice:
|
|
117
129
|
|