Comparing sentry with forgecad

Author

@JetBrains

Stars

56

Repository

JetBrains/skills

sentry/SKILL.md

Sentry (Read-only Observability)

Quick start

  • If not already authenticated, ask the user to provide a valid SENTRY_AUTH_TOKEN (read-only scopes such as project:read, event:read) or to log in and create one before running commands.
  • Set SENTRY_AUTH_TOKEN as an env var.
  • Optional defaults: SENTRY_ORG, SENTRY_PROJECT, SENTRY_BASE_URL.
  • Defaults: org/project {your-org}/{your-project}, time range 24h, environment prod, limit 20 (max 50).
  • Always call the Sentry API (no heuristics, no caching).

If the token is missing, give the user these steps:

  1. Create a Sentry auth token: https://sentry.io/settings/account/api/auth-tokens/
  2. Create a token with read-only scopes such as project:read, event:read, and org:read.
  3. Set SENTRY_AUTH_TOKEN as an environment variable in their system.
  4. Offer to guide them through setting the environment variable for their OS/shell if needed.
  • Never ask the user to paste the full token in chat. Ask them to set it locally and confirm when ready.

Core tasks (use bundled script)

Use scripts/sentry_api.py for deterministic API calls. It handles pagination and retries once on transient errors.

Skill path (set once)

export CODEX_HOME="${CODEX_HOME:-$HOME/.codex}"
export SENTRY_API="$CODEX_HOME/skills/sentry/scripts/sentry_api.py"

User-scoped skills install under $CODEX_HOME/skills (default: ~/.codex/skills).

1) List issues (ordered by most recent)

python3 "$SENTRY_API" \
  list-issues \
  --org {your-org} \
  --project {your-project} \
  --environment prod \
  --time-range 24h \
  --limit 20 \
  --query "is:unresolved"

2) Resolve an issue short ID to issue ID

python3 "$SENTRY_API" \
  list-issues \
  --org {your-org} \
  --project {your-project} \
  --query "ABC-123" \
  --limit 1

Use the returned id for issue detail or events.

3) Issue detail

python3 "$SENTRY_API" \
  issue-detail \
  1234567890

4) Issue events

python3 "$SENTRY_API" \
  issue-events \
  1234567890 \
  --limit 20

5) Event detail (no stack traces by default)

python3 "$SENTRY_API" \
  event-detail \
  --org {your-org} \
  --project {your-project} \
  abcdef1234567890

API requirements

Always use these endpoints (GET only):

  • List issues: /api/0/projects/{org_slug}/{project_slug}/issues/
  • Issue detail: /api/0/issues/{issue_id}/
  • Events for issue: /api/0/issues/{issue_id}/events/
  • Event detail: /api/0/projects/{org_slug}/{project_slug}/events/{event_id}/

Inputs and defaults

  • org_slug, project_slug: default to {your-org}/{your-project} (avoid non-prod orgs).
  • time_range: default 24h (pass as statsPeriod).
  • environment: default prod.
  • limit: default 20, max 50 (paginate until limit reached).
  • search_query: optional query parameter.
  • issue_short_id: resolve via list-issues query first.

Output formatting rules

  • Issue list: show title, short_id, status, first_seen, last_seen, count, environments, top_tags; order by most recent.
  • Event detail: include culprit, timestamp, environment, release, url.
  • If no results, state explicitly.
  • Redact PII in output (emails, IPs). Do not print raw stack traces.
  • Never echo auth tokens.

Golden test inputs

  • Org: {your-org}
  • Project: {your-project}
  • Issue short ID: {ABC-123}

Example prompt: “List the top 10 open issues for prod in the last 24h.” Expected: ordered list with titles, short IDs, counts, last seen.

Author

@KoStard

Stars

537

Repository

KoStard/ForgeCAD

skills/forgecad/SKILL.md

ForgeCAD

Author or modify ForgeCAD models, sketches, assemblies, and CLI workflows. Prefer documented primitives, import rules, placement strategies, and CLI commands over inventing new APIs.

Workflow

  1. Identify the artifact: .forge.js, SVG asset, or CLI/export task.
  2. If the model has any moving parts, load the assembly group AND the joint-design.md recipe upfront — do not defer the kinematic structure to a refactor pass.
  3. Load only the docs the task needs (see Source Map below). Start from the top group, add others as needed.
  4. If any two parts are intended to touch or mate in the final model, load the positioning guide immediately and default to connectors + matchTo().
  5. Default to a concrete first pass — easy iteration beats speculative design review.
  6. If an existing model is broken, replace the weak structure rather than preserving bad architecture.
  7. Validate with forgecad run <file> (add --debug-imports for import chain issues, and pass --backend manifold|occt when the backend matters).
  8. For jointsView() animations, keep wrapped revolute tracks continuous across branch cuts; do not assume the viewport will auto-fix -180/180 jumps.

Import and Composition

  • require("./file.forge.js", { Param: value }) for any model file, with optional param overrides.
  • For static multi-part models, connectors + matchTo() are the default way to assemble touching parts.
  • Top-level scripts can return Assembly or SolvedAssembly directly. Do not call .toGroup() just to render an assembly; use .toGroup() only when you need ShapeGroup composition, transforms, or named-child lookup.
  • importSvgSketch() for SVG files (file format loader, not a module import).
  • .placeReference('bottom', [0,0,0]) to align any built-in anchor to a world coordinate; also works with custom .withReferences().
  • Plain .js modules for shared helpers/constants (not model imports).

Source Map

Load groups top-to-bottom, stopping when you have what the task needs.

1. Core API (always read first)

Execution model, colors, coordinate system, primitives, booleans, patterns, imports, parameters, topology, edge queries.

  • {{SKILL_DIR}}/docs/API/core/concepts.md
  • {{SKILL_DIR}}/docs/generated/core.md

2. Static Assembly and Positioning (for any multi-part model)

Axis conventions, winding rules, and placement strategy. If parts should touch in the final model, read this group before writing placement code. Connectors + matchTo() are the default for mating interfaces; raw translate() and rotate() are for free offsets, not assembly contracts.

  • {{SKILL_DIR}}/docs/guides/coordinate-system.md
  • {{SKILL_DIR}}/docs/guides/geometry-conventions.md
  • {{SKILL_DIR}}/docs/guides/positioning.md

3. Sketch APIs

2D construction, transforms, booleans, paths, on-face sketching, extrusion, anchors, text, regions.

  • {{SKILL_DIR}}/docs/generated/sketch.md

4. Curves and Surfacing (for lofts, sweeps, splines)

Smooth curves, Hermite splines, lofted and swept solids.

  • {{SKILL_DIR}}/docs/generated/curves.md

5. Assemblies and Mechanisms (for joints or kinematics)

Assembly graph, joint types, couplings, validation, robot export.

  • {{SKILL_DIR}}/docs/generated/assembly.md

6. Sheet Metal (for bent parts, K-factor, flat patterns)

Bend operations, flat pattern unfolding, K-factor configuration.

  • {{SKILL_DIR}}/docs/generated/sheet-metal.md

7. Output and Export (for STL/3MF/STEP, BOM, dimensions)

Mesh export, exact geometry export, bill of materials, dimension annotations.

  • {{SKILL_DIR}}/docs/generated/output.md

8. Toolbox (fasteners and standard parts)

Parametric bolts, nuts, washers, standard hardware, gears, pipes, and structural profiles.

  • {{SKILL_DIR}}/docs/generated/lib.md
  • {{SKILL_DIR}}/docs/generated/wood.md

9. Runtime Viewport APIs (for cut planes, jointsView, and animation playback)

Viewer-only APIs such as cutPlane, explodeView, jointsView, and animation behavior.

  • {{SKILL_DIR}}/docs/generated/viewport.md

10. Recipes and Debugging (for patterns and troubleshooting)

Modeling patterns, debugging tactics, copyable snippets.

  • {{SKILL_DIR}}/docs/guides/modeling-recipes.md
  • {{SKILL_DIR}}/docs/guides/joint-design.md

11. CLI (for validation/render/export tasks)

Test-run, export pipelines, debug flags.

  • {{SKILL_DIR}}/docs/CLI.md
  • {{SKILL_DIR}}/docs/guides/inspection-bundles.md

SDF Modeling — Experimental (smooth booleans, TPMS, deformations, fromFunction)

Primitives, smooth booleans, TPMS lattices, twist/bend/displace, morph, custom functions, gotchas. Experimental — slower render, lower mesh quality than B-rep.

  • {{SKILL_DIR}}/docs/generated/sdf.md

AI Skill Finder

Ask me what skills you need

What are you building?

Tell me what you're working on and I'll find the best agent skills for you.

sentry vs forgecad - Compare Skills | RuleSkill