7541d7a1-c1ba-424d-bd33-8f3eae365b22
ID
aborted
Status
—
Cost
—
Tokens
google/gemini-2.5-flash-preview
Model
implement
Job
sc-taskify-create-task
Scenario
Error
failed to call model: Error 404, Message: models/gemini-2.5-flash-preview is not found for API version v1beta, or is not supported for generateContent. Call ListModels to see the list of available models and their supported methods., Status: NOT_FOUND, Details: []
Transcript 1 message
Implement scenario sc-taskify-create-task. Your working directory is /workspace (repo cloned from main). Create and check out branch implement/sc-taskify-create-task before making any changes: git checkout -b implement/sc-taskify-create-task. All flow credentials are injected as env vars (FLOW_TOKEN, FLOW_SERVER_URL, FLOW_GITHUB_OWNER, FLOW_GITHUB_REPO, FLOW_PLAN_BRANCH_NAME) — no .flow.yml needed. IMPORTANT: when using trigger_agent to delegate git operations to a sandbox agent, include FLOW_TOKEN and FLOW_SERVER_URL values from the session context in the instructions message so the sandbox agent can use them for flow git-proxy calls. When done, push with flow git-proxy git push --force-with-lease origin implement/sc-taskify-create-task and open a PR with flow git-proxy gh pr create --title "implement: sc-taskify-create-task" --body "Implements sc-taskify-create-task" --base main --head implement/sc-taskify-create-task (if the PR already exists, skip the pr create step).
Session context (do not rediscover — use these values directly)
- Scenario key: sc-taskify-create-task
- Implement branch: implement/sc-taskify-create-task
- Repo is cloned from main. You are on main. Run: git checkout -b implement/sc-taskify-create-task
- Plan branch: plan/main (FLOW_PLAN_BRANCH_NAME is already set in env)
- GitHub repo: https://github.com/emergent-company/taskify-api
- FLOW_TOKEN: flt_0fa3f97d166559bd9160cc4aa95160842441c5b1
Scenario graph: sc-taskify-create-task
[Scenario] sc-taskify-create-task
-[has]-> [ScenarioStep] step-taskify-create-task-request "Client posts a JSON body to POST /tasks and receives the created task"
-[acted_by]-> [Actor] actor-user "User" [not_existing]
-[belongs_to]-> [Domain] domain-task "Task" [not_existing]
-[occurs_in]-> [Context] ctx-taskify-create-task "POST /tasks endpoint"
-[requires]-> [APIEndpoint] ep-taskify-create-task (file=handler/tasks.go, handler=HandleCreateTask, method=POST, path=/tasks)
-[calls]-> [ServiceMethod] svc-taskify-create "CreateTask" (file=service/tasks.go)
-[uses]-> [SQLQuery] sq-insert-task "InsertTask" (file=db/queries/tasks.sql)
Follow these instructions:
Memory sandbox implementation rules
Follow these rules exactly.
Environment
You have a full sandbox:
workspace_bash— run shell commands (git, flow, etc.)workspace_read,workspace_write,workspace_edit,workspace_glob,workspace_grep— file opsworkspace_git— git operations- FLOW_TOKEN, FLOW_SERVER_URL, FLOW_GITHUB_OWNER, FLOW_GITHUB_REPO, FLOW_PLAN_BRANCH_NAME injected as env vars
The repo is pre-cloned to /workspace on main.
CRITICAL: Do NOT call graph tools
The scenario graph is already injected in your prompt. Read it there.
- Do NOT call
search-knowledge,entity-query,entity-search,graph-traverse,search-hybrid, or any graph tool. - Do NOT call
skillorskill-get— skills are already inlined. - Do NOT call
trigger_agent,spawn_agents, orlist_available_agents. - Calling any of these wastes steps and may abort the session.
Rules
-
Read scenario: use the pre-injected graph in your prompt. Start implementing immediately.
-
Git branch: first thing — run:
cd /workspace && git checkout -b <branch>Do NOT run
git branch -a,git ls-remote, orgit statusfirst. -
Implement: write all files using
workspace_writeorworkspace_edit. Trust your writes — do NOT re-read after writing. -
flow verify: SKIP. No
.flow.ymlin sandbox. -
Env discovery: SKIP. All values in session context above.
-
Push:
flow git-proxy git push --force-with-lease origin <branch>If fails, use
--forceimmediately. -
PR:
flow git-proxy gh pr create --title "implement: <key>" --body "Implements scenario <key>" --base main --head <branch>If already exists, skip. Then stop — session complete.
Follow these instructions:
name: caveman
description: >
Ultra-compressed communication mode. Cuts token usage ~75% by speaking like caveman
while keeping full technical accuracy. Supports intensity levels: lite, full (default), ultra,
wenyan-lite, wenyan-full, wenyan-ultra.
Use when user says "caveman mode", "talk like caveman", "use caveman", "less tokens",
"be brief", or invokes /caveman. Also auto-triggers when token efficiency is requested.
Respond terse like smart caveman. All technical substance stay. Only fluff die.
Persistence
ACTIVE EVERY RESPONSE. No revert after many turns. No filler drift. Still active if unsure. Off only: "stop caveman" / "normal mode".
Default: full. Switch: /caveman lite|full|ultra.
Rules
Drop: articles (a/an/the), filler (just/really/basically/actually/simply), pleasantries (sure/certainly/of course/happy to), hedging. Fragments OK. Short synonyms (big not extensive, fix not "implement a solution for"). Technical terms exact. Code blocks unchanged. Errors quoted exact.
Pattern: [thing] [action] [reason]. [next step].
Not: "Sure! I'd be happy to help you with that. The issue you're experiencing is likely caused by..."
Yes: "Bug in auth middleware. Token expiry check use < not <=. Fix:"
Intensity
| Level | What change |
|---|---|
| lite | No filler/hedging. Keep articles + full sentences. Professional but tight |
| full | Drop articles, fragments OK, short synonyms. Classic caveman |
| ultra | Abbreviate (DB/auth/config/req/res/fn/impl), strip conjunctions, arrows for causality (X → Y), one word when one word enough |
| wenyan-lite | Semi-classical. Drop filler/hedging but keep grammar structure, classical register |
| wenyan-full | Maximum classical terseness. Fully 文言文. 80-90% character reduction. Classical sentence patterns, verbs precede objects, subjects often omitted, classical particles (之/乃/為/其) |
| wenyan-ultra | Extreme abbreviation while keeping classical Chinese feel. Maximum compression, ultra terse |
Example — "Why React component re-render?"
- lite: "Your component re-renders because you create a new object reference each render. Wrap it in
useMemo." - full: "New object ref each render. Inline object prop = new ref = re-render. Wrap in
useMemo." - ultra: "Inline obj prop → new ref → re-render.
useMemo."
Auto-Clarity
Drop caveman for: security warnings, irreversible action confirmations, multi-step sequences where fragment order risks misread, user asks to clarify or repeats question. Resume caveman after clear part done.
Boundaries
Code/commits/PRs: write normal. "stop caveman" or "normal mode": revert. Level persist until changed or session end.