Skip to content

feat: improve carta-portfolio-alerts skill score (17% → 96%)#43

Open
yogesh-tessl wants to merge 1 commit into
carta:mainfrom
yogesh-tessl:improve/skill-review-optimization
Open

feat: improve carta-portfolio-alerts skill score (17% → 96%)#43
yogesh-tessl wants to merge 1 commit into
carta:mainfrom
yogesh-tessl:improve/skill-review-optimization

Conversation

@yogesh-tessl
Copy link
Copy Markdown

@yogesh-tessl yogesh-tessl commented May 18, 2026

Hey @vijayCarta 👋

ran your skills through tessl skill review at work and found some targeted improvements for carta-portfolio-alerts. Here's the before/after:

Skill Before After Change
carta-portfolio-alerts 17% 96% +79%

The 17% baseline was caused by allowed-tools using a YAML array instead of a quoted string. This blocked the evaluation judge entirely across all your skills. I fixed it on this one skill so the judge could actually score the content, then tightened up the description and body.

Changes made
  • Fixed allowed-tools format - converted from YAML array to a quoted comma-separated string, which is the format the skill spec expects. This was the main blocker keeping all skills at 17%.
  • Enriched description with trigger terms and "Use when..." clause - added natural phrases like "expiring", "note maturities", "low option pool alerts", "SAFE exposure warnings", "portfolio health audit", "red-flag scan", "deadlines", "renewals approaching". Also added explicit skill differentiation pointing to carta-portfolio-query and carta-market-benchmarks for non-risk queries.
  • Folded when_to_use into description - removed the non-standard frontmatter key (was flagged as unknown) and integrated its content into the standard description field.
  • Consolidated redundant sections - merged Per-Company Commands, Key Fields, and Workflow Step 2 into a single section. The fetch commands, their key response fields, and the parallel execution guidance now live in one place instead of three.
  • Compacted severity threshold tables - merged four separate single-row tables into one unified table and removed the Rationale columns (the thresholds speak for themselves).
  • Trimmed intro - removed the HTML comment and "Builds on the carta-portfolio-query pattern" line that didn't add actionable guidance.

also stress-tested your carta-portfolio-alerts skill against a few real-world task evals and it held up really well on cross-portfolio 409A expiry scans with mixed severity classifications. Kudos for that.

quick honest disclosure. I work at https://github.com/tesslio where we build tooling around skills like these. Not a pitch, just saw room for improvement and wanted to contribute.

If you want to self-improve your skills, or define your own scenarios to pressure test, just ask your agent (Claude Code, Codex, etc.) to evaluate and optimize your skill with Tessl. Ping me @yogesh-tessl, if you hit any snags.

Hey @vijayCarta 👋

I ran your skills through `tessl skill review` at work and found some targeted improvements for `carta-portfolio-alerts`. Here's the before/after:

| Skill | Before | After | Change |
|-------|--------|-------|--------|
| carta-portfolio-alerts | 17% | 96% | +79% |

The 17% baseline was caused by `allowed-tools` using a YAML array instead of a quoted string — this blocked the evaluation judge entirely across all your skills. I fixed it on this one skill so the judge could actually score the content, then tightened up the description and body.

<details>
<summary>Changes made</summary>

- **Fixed `allowed-tools` format** — converted from YAML array to a quoted comma-separated string, which is the format the skill spec expects. This was the main blocker keeping all skills at 17%.
- **Enriched description with trigger terms and "Use when..." clause** — added natural phrases like "expiring", "note maturities", "low option pool alerts", "SAFE exposure warnings", "portfolio health audit", "red-flag scan", "deadlines", "renewals approaching". Also added explicit skill differentiation pointing to `carta-portfolio-query` and `carta-market-benchmarks` for non-risk queries.
- **Folded `when_to_use` into description** — removed the non-standard frontmatter key (was flagged as unknown) and integrated its content into the standard `description` field.
- **Consolidated redundant sections** — merged Per-Company Commands, Key Fields, and Workflow Step 2 into a single section. The fetch commands, their key response fields, and the parallel execution guidance now live in one place instead of three.
- **Compacted severity threshold tables** — merged four separate single-row tables into one unified table and removed the Rationale columns (the thresholds speak for themselves).
- **Trimmed intro** — removed the HTML comment and "Builds on the carta-portfolio-query pattern" line that didn't add actionable guidance.

</details>

I also stress-tested your `carta-portfolio-alerts` skill against a few real-world task evals and it held up really well on cross-portfolio 409A expiry scans with mixed severity classifications. Kudos for that.

Honest disclosure — I work at @tesslio where we build tooling around skills like these. Not a pitch — just saw room for improvement and wanted to contribute.

Want to self-improve your skills? Just point your agent (Claude Code, Codex, etc.) at [this Tessl guide](https://docs.tessl.io/evaluate/optimize-a-skill-using-best-practices) and ask it to optimize your skill. Ping me — [@yogesh-tessl](https://github.com/yogesh-tessl) — if you hit any snags.

Thanks in advance 🙏
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