Skip to content

Add estimate and debug skills#2048

Merged
jordanstephens merged 3 commits intomainfrom
jordan/additional-skills
Apr 15, 2026
Merged

Add estimate and debug skills#2048
jordanstephens merged 3 commits intomainfrom
jordan/additional-skills

Conversation

@jordanstephens
Copy link
Copy Markdown
Member

@jordanstephens jordanstephens commented Apr 13, 2026

Summary

  • Adds /defang:estimate skill — guides through finding a compose.yaml, selecting a stack (or prompting for provider/region/mode), running defang compose estimate, and explaining the cost breakdown
  • Adds /defang:debug skill — checks deployment status via defang compose ps, fetches recent logs, scans for common error patterns, and produces a structured diagnosis with next steps
  • Updates plugin descriptions in both .agents/plugins/marketplace.json and .claude-plugin/marketplace.json to reference all three skills

Test plan

  • Invoke /defang:estimate on a project with an existing stack and verify it runs defang compose estimate and explains results
  • Invoke /defang:estimate on a project with no stacks and verify it prompts for provider/region/mode
  • Invoke /defang:debug on a healthy deployment and verify status + log summary
  • Invoke /defang:debug on a deployment with errors and verify it surfaces the root cause and recommends next steps

🤖 Generated with Claude Code

Summary by CodeRabbit

  • New Features

    • Debugging skill to troubleshoot and resolve Defang project deployment issues
    • Cost estimation skill to evaluate and plan monthly cloud expenses
  • Documentation

    • Comprehensive debugging guide with step-by-step troubleshooting workflow and log analysis
    • Cost estimation guide for evaluating cloud infrastructure expenses using the CLI
  • Chores

    • Marketplace listings updated to advertise the new /defang:estimate and /defang:debug skills

jordanstephens and others added 2 commits April 13, 2026 11:06
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Apr 13, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: c4ebf834-8cf1-48ac-a5eb-49b717b3d1fb

📥 Commits

Reviewing files that changed from the base of the PR and between d94e114 and 0a291d9.

📒 Files selected for processing (1)
  • skills/debug.md
✅ Files skipped from review due to trivial changes (1)
  • skills/debug.md

📝 Walkthrough

Walkthrough

This PR adds two skill documentation files (skills/debug.md, skills/estimate.md) and updates two marketplace manifests to advertise the Defang plugin's available skills: /defang:deploy, /defang:estimate, and /defang:debug.

Changes

Cohort / File(s) Summary
Plugin Marketplace Manifests
.agents/plugins/marketplace.json, .claude-plugin/marketplace.json
Updated the Defang plugin description text to list /defang:estimate and /defang:debug alongside /defang:deploy (metadata text change only).
Skill Documentation
skills/debug.md, skills/estimate.md
Added two new guides: debug.md (debug workflow: CLI checks, auth, locate compose, inspect stacks/services, collect logs, diagnose) and estimate.md (cost estimation workflow: CLI setup, auth, compose selection, stack/provider choice, run defang compose estimate, interpret output).

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

Poem

🐰 I hopped through manifests, tidy and neat,

New estimate and debug skills — a nimble feat.
Logs and costs laid out, clear as day,
I nibble at bugs and chase clouds away.
Hooray for tiny hops that guide the way!

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'Add estimate and debug skills' directly and clearly summarizes the main change: the addition of two new skills (estimate and debug) to the Defang project, matching the core content of the changeset.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch jordan/additional-skills

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (1)
skills/estimate.md (1)

17-17: Tighten repeated phrasing for readability.

Line 17 repeats “If … ask …” patterns several times in one sentence. Consider splitting into shorter bullets for easier parsing.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@skills/estimate.md` at line 17, The sentence that begins "Look for any
compose.yaml files in the current directory or parent directories..." is overly
repetitive; rewrite it as short bullets describing the sequence of checks and
user prompts: 1) search for compose.yaml files and if multiple are found prompt
the user to select one, 2) if none are found ask whether to create a new
compose.yaml, and 3) if they choose to create, prompt for desired services and
generate the file from their answers; replace the single long sentence with
these 3 concise bullets to remove repeated "If … ask …" phrasing and improve
readability.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@skills/debug.md`:
- Line 25: Update the guidance around "Note the active stack (provider, region,
deployment mode)." to explicitly handle the case where `defang stack ls` returns
no stacks: add a branch that states "No deployment found yet" and instruct the
user to deploy first (e.g., run the project's deploy command) or verify they're
in the correct project directory; also keep the existing advice to select/set a
default stack (e.g., `defang stack default STACK_NAME`) if stacks are present.
Ensure the new text clearly contrasts the "no stacks" path from the existing
"stack exists but not selected" path so users aren't left at a dead-end.

---

Nitpick comments:
In `@skills/estimate.md`:
- Line 17: The sentence that begins "Look for any compose.yaml files in the
current directory or parent directories..." is overly repetitive; rewrite it as
short bullets describing the sequence of checks and user prompts: 1) search for
compose.yaml files and if multiple are found prompt the user to select one, 2)
if none are found ask whether to create a new compose.yaml, and 3) if they
choose to create, prompt for desired services and generate the file from their
answers; replace the single long sentence with these 3 concise bullets to remove
repeated "If … ask …" phrasing and improve readability.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: be9780a4-6079-4b5c-b7a9-6924d00ae91d

📥 Commits

Reviewing files that changed from the base of the PR and between 55dc990 and d94e114.

📒 Files selected for processing (4)
  • .agents/plugins/marketplace.json
  • .claude-plugin/marketplace.json
  • skills/debug.md
  • skills/estimate.md

Comment thread skills/debug.md Outdated
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@jordanstephens jordanstephens merged commit 20a3388 into main Apr 15, 2026
5 checks passed
@jordanstephens jordanstephens deleted the jordan/additional-skills branch April 15, 2026 16:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant