chore(skills): add self-improving devflow skill#1288
chore(skills): add self-improving devflow skill#1288markturansky wants to merge 1 commit intoalphafrom
Conversation
Establishes the end-to-end development workflow as a Claude skill: ticket → branch → spec → PR → review → code → deploy → verify. Seeded Known Pitfalls from existing context files and guide lessons. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
📝 WalkthroughWalkthroughAdded a new skill documentation file that outlines the complete development workflow for the Ambient Code Platform, including ticket/branch setup, implementation phases, component-specific build/test commands, known pitfalls with corrections, and a self-improving log section with turn-counter reminders. Changes
🚥 Pre-merge checks | ✅ 6✅ Passed checks (6 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
✨ Simplify code
Comment |
There was a problem hiding this comment.
Actionable comments posted: 2
🧹 Nitpick comments (1)
.claude/skills/devflow/SKILL.md (1)
334-340: Strengthen--no-verifyguidance with a required follow-up.Line 338 is useful as an escape hatch, but without a required follow-up it can normalize skipping quality gates.
Proposed edit
git commit --no-verify # skip pre-commit hooks (use sparingly)-But prefer fixing the lint/format issue instead.
+If used, run the equivalent checks manually before push and fix failures immediately.
+But prefer fixing the lint/format issue instead.</details> <details> <summary>🤖 Prompt for AI Agents</summary>Verify each finding against the current code and only fix it if needed.
In @.claude/skills/devflow/SKILL.md around lines 334 - 340, Update the
"Pre-commit Hooks" guidance to strengthen the--no-verifyescape hatch: after
mentioninggit commit --no-verify, add a required follow-up sentence
instructing the developer to run the equivalent pre-commit checks manually
(e.g., the same linters/formatters from .pre-commit-config.yaml) before pushing
and to fix any failures immediately; keep the existing "But prefer fixing the
lint/format issue instead." line afterward.</details> </blockquote></details> </blockquote></details> <details> <summary>🤖 Prompt for all review comments with AI agents</summary>Verify each finding against the current code and only fix it if needed.
Inline comments:
In @.claude/skills/devflow/SKILL.md:
- Around line 34-50: The fenced workflow block starting at the list of steps
should include a language tag to satisfy markdown linting; update the
triple-backtick fence that encloses the numbered steps (the fenced workflow
block) to use a language like "text" (e.g., ```text) so the block is explicitly
typed and renders consistently.- Around line 187-196: Replace the "TBD" steps under "5b. Update GitOps
Repository" and "5c. Verify Deployment" with concrete commands and process: use
skopeo inspect to obtain the immutable image digest (reference skopeo inspect
and jq to extract .Digest), update the GitOps manifests to pin the image as
@sha256:, commit the change and open/merge a PR; after merge, verify
rollout by running kubectl -n ambient-code get deploy,pods and kubectl -n
ambient-code rollout status deploy/ambient-api-server --timeout=120s, perform
quick smoke checks and then run the component/e2e test commands referenced in
this skill's quick reference.
Nitpick comments:
In @.claude/skills/devflow/SKILL.md:
- Around line 334-340: Update the "Pre-commit Hooks" guidance to strengthen the
--no-verifyescape hatch: after mentioninggit commit --no-verify, add a
required follow-up sentence instructing the developer to run the equivalent
pre-commit checks manually (e.g., the same linters/formatters from
.pre-commit-config.yaml) before pushing and to fix any failures immediately;
keep the existing "But prefer fixing the lint/format issue instead." line
afterward.</details> <details> <summary>🪄 Autofix (Beta)</summary> Fix all unresolved CodeRabbit comments on this PR: - [ ] <!-- {"checkboxId": "4b0d0e0a-96d7-4f10-b296-3a18ea78f0b9"} --> Push a commit to this branch (recommended) - [ ] <!-- {"checkboxId": "ff5b1114-7d8c-49e6-8ac1-43f82af23a33"} --> Create a new PR with the fixes </details> --- <details> <summary>ℹ️ Review info</summary> <details> <summary>⚙️ Run configuration</summary> **Configuration used**: Path: .coderabbit.yaml **Review profile**: CHILL **Plan**: Pro **Run ID**: `75e38c71-9a5a-4f83-8ebb-3d24b789f821` </details> <details> <summary>📥 Commits</summary> Reviewing files that changed from the base of the PR and between 23002c1dc85b7b0d0c25c60cf261b754a5183ea8 and bab5e8704feab4f63d71d96a49efd1bf90df8995. </details> <details> <summary>📒 Files selected for processing (1)</summary> * `.claude/skills/devflow/SKILL.md` </details> </details> <!-- This is an auto-generated comment by CodeRabbit for review status -->
| ``` | ||
| 1. Ticket (optional) | ||
| 2. Branch (from ticket name if available) | ||
| 3. Spec change (load + modify the component's .spec.md) | ||
| 4. Commit spec → push → PR against `alpha` | ||
| 5. Review (agentic: thorough PR review; human: desired but optional) | ||
| 6. On spec acceptance → load the component's .guide.md (the implementation workflow) | ||
| 7. Branch (from ticket name if available) | ||
| 8. Commit order: | ||
| a. Guide/skill/workflow self-improvement changes (1 commit) | ||
| b. Code changes grouped by component | ||
| 9. Push → PR against `alpha` | ||
| 10. Review (human + bot comments; local review too) | ||
| 11. On merge → await quay.io image | ||
| 12. Update gitops repository with new image SHA (Skill TBD) | ||
| 13. After deployment → run tests / e2e suite (TBD) | ||
| ``` |
There was a problem hiding this comment.
Add a language to the fenced workflow block.
Line 34 uses a fenced code block without a language tag, which trips markdown lint and reduces rendering consistency.
Proposed edit
-```
+```text
1. Ticket (optional)
2. Branch (from ticket name if available)
...
13. After deployment → run tests / e2e suite (TBD)</details>
<!-- suggestion_start -->
<details>
<summary>📝 Committable suggestion</summary>
> ‼️ **IMPORTANT**
> Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
```suggestion
🧰 Tools
🪛 markdownlint-cli2 (0.22.0)
[warning] 34-34: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In @.claude/skills/devflow/SKILL.md around lines 34 - 50, The fenced workflow
block starting at the list of steps should include a language tag to satisfy
markdown linting; update the triple-backtick fence that encloses the numbered
steps (the fenced workflow block) to use a language like "text" (e.g., ```text)
so the block is explicitly typed and renders consistently.
| ### 5b. Update GitOps Repository | ||
|
|
||
| > **Skill TBD.** This step will be formalized as experience accumulates. | ||
|
|
||
| Get the image SHA from quay.io and update the gitops repository's image references. Due to lack of autodeploy, this is a manual step. | ||
|
|
||
| ### 5c. Verify Deployment | ||
|
|
||
| After deployment, run all available tests. E2E test suite TBD. | ||
|
|
There was a problem hiding this comment.
Deployment section is still non-executable for an “end-to-end” skill.
Lines 187–196 leave GitOps update and post-deploy verification as TBD. That creates a real reliability gap in the documented workflow and can leave changes unverified in practice.
Proposed edit
### 5b. Update GitOps Repository
-> **Skill TBD.** This step will be formalized as experience accumulates.
-
-Get the image SHA from quay.io and update the gitops repository's image references. Due to lack of autodeploy, this is a manual step.
+Get the image digest from quay and update image references in the gitops repo in a dedicated commit:
+```bash
+# Example: capture immutable digest from the built tag
+skopeo inspect docker://quay.io/ambient_code/vteam_api_server:<sha-or-tag> | jq -r '.Digest'
+# Update gitops manifests to use `@sha256`:<digest>, commit, open PR, merge
+```
### 5c. Verify Deployment
-After deployment, run all available tests. E2E test suite TBD.
+After deployment, run smoke checks first, then full tests:
+```bash
+kubectl -n ambient-code get deploy,pods
+kubectl -n ambient-code rollout status deploy/ambient-api-server --timeout=120s
+# Then run component test commands from this skill's quick reference
+```📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| ### 5b. Update GitOps Repository | |
| > **Skill TBD.** This step will be formalized as experience accumulates. | |
| Get the image SHA from quay.io and update the gitops repository's image references. Due to lack of autodeploy, this is a manual step. | |
| ### 5c. Verify Deployment | |
| After deployment, run all available tests. E2E test suite TBD. | |
| ### 5b. Update GitOps Repository | |
| Get the image digest from quay and update image references in the gitops repo in a dedicated commit: |
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In @.claude/skills/devflow/SKILL.md around lines 187 - 196, Replace the "TBD"
steps under "5b. Update GitOps Repository" and "5c. Verify Deployment" with
concrete commands and process: use skopeo inspect to obtain the immutable image
digest (reference skopeo inspect and jq to extract .Digest), update the GitOps
manifests to pin the image as `@sha256`:<digest>, commit the change and open/merge
a PR; after merge, verify rollout by running kubectl -n ambient-code get
deploy,pods and kubectl -n ambient-code rollout status deploy/ambient-api-server
--timeout=120s, perform quick smoke checks and then run the component/e2e test
commands referenced in this skill's quick reference.
Summary
.claude/skills/devflow/SKILL.md— the end-to-end development workflow skill covering ticket → branch → spec → PR → review → code → deploy → verify.Test plan
@.claude/skills/devflowand walk through a small code change to validate the workflow steps🤖 Generated with Claude Code
Summary by CodeRabbit