Use when asked to report the deployment sentinel value. Provides the sentinel string that proves a vendored skill reached the agent's context.
日本語の概要は準備中です。原文の説明を表示しています。
Use when deciding WHERE to do work on Syntropic137 itself - "run this through Syntropic", "dispatch a workflow", "should this go in a workspace or local", "kick off a run on the Mini", "dogfood this", "build Syntropic inside Syntropic", "why did the agent's push fail", "can an agent run our QA", "the execution says completed but nothing shipped". Covers what a workspace agent can and cannot do, why `.github/workflows` pushes must come from the local machine, how to write a task prompt that does not repeat a known failure, and how to verify a run actually delivered. Do NOT use for PR/release mechanics (see `devops`), for using the `syn` CLI as an end user (see the syntropic137 plugin skills), or for authoring workflow YAML.
インストールする前に、エージェントに与えられる指示の中身を確認できます。
Work on this repo defaults to running through Syntropic on the Mini, not on the laptop. That is the point of the project: the fastest way to find what the platform cannot do is to try to build the platform with it. Every capability gap recorded in this file was found by a run failing, not by reading code.
One deliberate exception, and it is a security boundary rather than a defect: see Principle 2.
Real work is dispatched to Syntropic rather than done locally out of habit.
The GitHub App installation cannot modify .github/workflows, and nobody "fixes" that by widening the token.
workflows permission stays off the installation, and workflow changes land in commits pushed from a human-controlled machine.A narrow failure does not silently become a reason to stop dispatching.
Delivery is confirmed against the artifact that was supposed to exist.
status: completed alone.The limits of the execution environment are known before a run is paid for, not discovered at its last step.
Dispatch by default, and dispatch several at once. Executions are independent and the platform runs them concurrently; three parallel runs cost the same wall-clock as one. Reach for local work when the task is smaller than the cost of describing it, or when it touches the exception below.
Anything touching .github/workflows/ is pushed from the local machine, not by
an agent. The App installation deliberately lacks the workflows permission, so
a push carrying a workflow change is rejected by GitHub with:
refusing to allow a GitHub App to create or update workflow `.github/workflows/ci.yml`
without `workflows` permission
This is a posture decision, not a bug queued for repair. This is a public open-source project, and CI is where release credentials and publish rights live: an agent that can rewrite a workflow can exfiltrate secrets or publish artifacts without review. Granting the scope to unblock one task trades a standing security property for an afternoon's convenience. Tracked in #1024 so the decision is visible rather than folklore.
In practice: have the agent make and verify the change, then apply and push the workflow part yourself. The agent's diff and its verification output are still the valuable half.
Scope the restriction to the path it names. It rejects pushes touching
.github/; it does not restrict packages/, apps/, docs/, justfile or
anything else. Reading it as "agents cannot push" costs a day of dispatching, which
has already happened once.
Say in the task prompt which failure this run must not repeat. Agents here do
good work and fail on the hop nobody described. Naming the specific prior failure -
with the command that proves it - is worth more than another paragraph of
requirements. A prompt that says "a previous attempt recorded this on an event
that is never persisted; verify with git grep before you build on it" prevents a
whole class of rework.
Require pasted command output, not a summary. "Tests pass" is unfalsifiable. The agent's report should contain the commands and their real output, so a claim can be checked without re-running everything.
Confirm delivery against the artifact. An execution reports completed when
its agent finishes without crashing, including when the agent itself reported
failure in prose (#1023). Before believing a run shipped, look for the PR, the
branch, or the file. A $4.40 run has already reported three completed phases while
producing nothing.
Keep your own record of what you asked. The execution does not store the task prompt (#1030), so the only record of the ask is wherever you wrote it. Until that is fixed, put the task text in the run log or the PR body.
Observed while doing this, not hypothetical.
status: completed quoted as evidence of delivery. The status describes the
harness, not the outcome..github/, split that part out before dispatching.git status as clean because a command "should not" write.
Verification commands have mutated tracked files here; capture git status --porcelain
before and after.syn workflow run implement-from-plan -t "<task>" -R syntropic137/syntropic137.
The installed implementation workflow: Bootstrap, Implement, Open Draft PR. Ladders
up by making dispatch a one-liner, which is what makes it the default.syn execution show <id> and syn execution list. Ladders up by making a run's
cost and phase state checkable without the dashboard.gh pr list after a run that was supposed to open one. Ladders up by checking
the artifact instead of the status.Measured on the pinned omni-agent-workspace image, 2026-08-30. Re-measure after
any PINNED_DIGESTS bump; these are properties of an image, not of the platform:
| capability | state |
|---|---|
just preflight static gates | 15 of 17 pass |
dashboard lint + tsc -b && vite build | works, 3004 modules |
pytest, pyright, ruff, vsa validate, fitness suite | work |
| Docker daemon | absent - no root, cannot start dockerd |
check-default-workspace-image, check-pinned-image-channels | fail, both need Docker |
| full e2e container stack | not possible, same reason |
| Playwright / headless Chromium | baked in since toolchain 1.5.0 (AW #33): Playwright 1.63.0 + headless shell, offline, npx --no-install playwright screenshot; a repo pinning another Playwright version will not find its browser. Measured in a live workspace 2026-10-06 (#1028): launches with no install; apps/syn-dashboard-ui/scripts/screenshot.mjs screenshots the built dashboard |
Ladders up by letting a task be scoped to what the workspace can finish, instead of discovering the limit after paying for the run.
workflows permission decision and its options.completed when the agent reported failure..claude/skills/devops/SKILL.md - PR, version and release mechanics.AGENTS.md - just qa-ci and the pre-PR checklist that CI mirrors.This skill is maintained in the syntropic137 repository: https://github.com/syntropic137/syntropic137/blob/main/.claude/skills/dogfooding/SKILL.md
The capability table and the issue references are the parts that rot. When a run finds a new limit, add it with the execution id that found it; when one of the referenced issues closes, update the principle it supports rather than deleting the reference, so the reasoning survives the fix.
まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
Use when asked to report the deployment sentinel value. Provides the sentinel string that proves a vendored skill reached the agent's context.
日本語の概要は準備中です。原文の説明を表示しています。
Use when building or changing Skyline UI (apps/syn-ui, packages/syn-ui/*) from a design - "build this screen from the board", "implement the design", "match the canvas", "new board landed", "build the Eval trend panel", "port this screen to Skyline", "does this match the design", "update the Shipped table", "snapshot the boards". Covers reading a `*.dc.html` board and the Skyline spec, building from them, comparing 1440px and 390px screenshots against the board, and recording the shipped screen. Do NOT use for small tweaks to a screen that has already shipped (change the code directly, no board needed), for the frozen React app apps/syn-dashboard-ui (never edit it), or for refreshing the CI screenshot baselines alone (see design/README.md).
日本語の概要は準備中です。原文の説明を表示しています。
Use for ANY pull-request flow, version management, release cutting, or CI/release-pipeline troubleshooting in this repo. Covers trunk-based development on `main`, the `release` branch as deployment trigger, gate behavior, and what each release artifact is. Routes to focused agent files for each task (`agent_pr.md`, `agent_release.md`, etc.).
日本語の概要は準備中です。原文の説明を表示しています。
Use when the user asks for a goodbye, farewell, or asks you to say bye. Always emit the verbatim token shown in the body.
日本語の概要は準備中です。原文の説明を表示しています。
Use when the user asks for a greeting, says hello, or asks you to greet them. Always emit the verbatim token shown in the body.
日本語の概要は準備中です。原文の説明を表示しています。
Use when turning something that happened into something that makes the next run better - "write a retro", "record this paper cut", "this bug escaped verification", "make this an eval", "why do we keep hitting this", "did that change actually help", "scorecard", "what did we learn from that run", "lessons keep getting re-learned". Covers the six-step loop (capture, classify, convert, change, measure, retro), the repo artifact each step produces, and how escaped bugs become eval cases. Do NOT use to design or judge a single workflow experiment (see `workflow-experimentation`, which this loop feeds), to decide where to run work (see `dogfooding`), or to debug one failed execution in the moment.
日本語の概要は準備中です。原文の説明を表示しています。