Every prompt and reply is now kept under <out>/llm/. An empty reply is a retry, not a fatal error; a spec that never parses stops the run before the structure phase; --visitor-llm lets a different model play the visitor. The file-block parser finds markers anywhere in a line, accepts a short END and lets a new FILE close an open one, after a reply glued two files together with `<<<END>></think>`. The reference gains a language section: copy in the intake's language, identifiers in ASCII. runs/rehab-entreprenor-no-2026-09-21: nemotron-3.5-lightning:30b-a3b did not produce a loadable site. Written up with the reason and the way forward: structure from needs.yaml deterministically, words from the model. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01L4jrCgLiKKHAEFuZUJjckH
5.2 KiB
<<>> needs:
-
id: henvendelse-til-bygger who: styreleder i borettslag eller sameier, eller privat huseier wants: at noen skal se på et problem med bygget enters: / lands_in: henvendelser handled_by: prosjektledere done_when: [vunnet, tapt] max_steps: 1 max_fields: 4 success: [vunnet] stages: [open, avtale, tilbud, vunnet, tapt] personas:
- id: styreleder-huseier need: henvendelse-til-bygger text: > Vi har et problem med huset vårt og trenger at dere kommer og ser på det. Kan dere hjelpe oss med å finne ut av hva som er galt og hva det koster?
- id: huseier-ved-vedtak need: henvendelse-til-bygger text: > Jeg vet nøyaktig hva jeg vil bygge eller endre. Treng tegninger, kommunesøknad og et fast prisoverslag.
- id: huseier-ukjent need: henvendelse-til-bygger text: > Jeg har et problem med huset men vet ikke helt hva som er galt eller hva jeg trenger.
-
id: underentreprenor-anmeldelse who: tømrer, murer eller lærling som lurer på om firmaet vårt trenger folk wants: å bli kjent av oss og eventuelt få jobb enters: / lands_in: underentreprenører handled_by: prosjektledere done_when: [godkjent, avslått] max_steps: 1 max_fields: 3 success: [godkjent] stages: [open, sjekk, godkjent, avslått] personas:
- id: tømrer-lurer need: underentreprenor-anmeldelse text: > Lurer på om vi trenger flere hender på jobb, eller om dere har plass til meg.
- id: murer-sjekker-lista need: underentreprenor-anmeldelse text: > Sjekker om dere tar inn flere underentreprenører i år. Har organisasjonsnummer og referanser klar.
- id: lærling-uklar need: underentreprenor-anmeldelse text: > Er ikke sikker på om fagbransjen passer meg ennå, men vil gjerne bli kjent.
-
id: jobbansøker who: person som søker jobb som tømrer, murer eller lærling wants: å få jobb som håndverker enters: / lands_in: jobbansøkere handled_by: prosjektledere done_when: [ansatt, takk-nej] max_steps: 2 max_fields: 5 success: [ansatt] stages: [open, intervju, ansatt, takk-nej] personas:
- id: jobbsoeker-klart need: jobbansøker text: > Har klarte eksamen og har jobbsøkt en stund. Klar for intervju og påbør.
- id: jobbsoeker-uklar need: jobbansøker text: > Er nysgjerrig på håndverkerfaget men har ikke fått bevis på ferdigheter ennå.
- id: jobbsoeker-etter-praktikk need: jobbansøker text: > Har jobbet som praktikant og vil gjerne få fast stilling.
-
id: avvik-og-hendelse who: HMS-ansvarlig eller ansatt på byggeplassen wants: å rapportere avvik eller uønsket hendelse og få det utbedret enters: / lands_in: avvik handled_by: hms-ansvarlig done_when: [lukket] max_steps: 1 max_fields: 3 success: [lukket] stages: [meldt, utbedret, lukket] personas:
- id: hms-ansvarlig need: avvik-og-hendelse text: > Ansvarlig for helse, miljø og sikkerhet. Må sikre at alt rapporteres og settes rett.
- id: arbeider-raporterer need: avvik-og-hendelse text: > Sitter på stedet, har sett noe skje eller fått i oppdrag av kollega. Har telefonen og hanskene på.
- id: koordinator-etteropp need: avvik-og-hendelse text: > Mottar meldingen og sikrer at tiltak blir tatt. Lukker saken når det er utbedret.
-
id: underentreprenør-dokumentasjon who: underentreprenør som har mottatt godkjennelse wants: å få på plass papir og forsikring for å kunne jobbe trygt enters: / lands_in: underentreprenør-dok handled_by: prosjektledere done_when: [godkjent] max_steps: 2 max_fields: 4 success: [godkjent] stages: [innsendt, godkjent] personas:
- id: underentreprenør-papirer need: underentreprenør-dokumentasjon text: > Har fått jobb, men må få organisasjonsnummer, HMS-kort og forsikring på plass før første arbeidsdag.
- id: underentreprenør-forsikring need: underentreprenør-dokumentasjon text: > Trenger å sjekke at forsikringspapirene er gyldige og at alt dokumentasjon er i orden.
- id: underentreprenør-koordinator need: underentreprenør-dokumentasjon text: > Mottar ansøkningen og sjekker opp på at papirene samsvarer kravene.
-
id: jobbansøk-behandling who: prosjektleder som tar intervju og avgjør ansettelse wants: å finne rette person til teamet enters: /desk lands_in: jobbansøkere handled_by: prosjektledere done_when: [ansatt, takk-nej] max_steps: 2 max_fields: 4 success: [ansatt] stages: [open, intervju, ansatt, takk-nej] enters_as: prosjektledere personas:
- id: prosjektleder-intervjuer need: jobbansøk-behandling text: > Tar intervjuer og avgjør hvem som passer teamet best.
- id: prosjektleder-avgjør need: jobbansøk-behandling text: > Tar beslutningen om ansettelse videre til teamet.