feat: improve product skill score (41% → 90%)#1771
Conversation
Hey @kmcginnes 👋 ## Description I ran your skills through `tessl skill review` at work and found some targeted improvements for the `product` skill. Here's the full before/after: | Skill | Before | After | Change | |-------|--------|-------|--------| | product | 41% | 90% | +49% | | connectors | 44% | — | — | | schema | 41% | — | — | | tailwind | 52% | — | — | | react | 57% | — | — | | typescript | 67% | — | — | | testing | 76% | — | — | | github | 84% | — | — | | git | 85% | — | — | I focused on the `product` skill since it had the most room to grow — it's the "front door" overview of Graph Explorer and was scoring lowest alongside `schema`. <details> <summary>Changes made to <code>product</code> skill</summary> - Added explicit "Use when..." clause to the description so agents know when to select this skill - Removed unknown `tools` frontmatter key that was triggering a validation warning - Added a concrete quickstart section with copy-paste Docker commands (from your existing docs) - Added a database/query language compatibility table with decision guidance (Gremlin vs openCypher vs SPARQL) - Added cross-references to deeper docs (`docs/features/connections.md`, `docs/architecture.md`, etc.) for progressive disclosure - Tightened the architecture section with monorepo structure, key libraries, and the proxy rationale - Kept the diff small (64 lines) — all additive, no structural rewrites </details> I also stress-tested your `testing` skill against a few real-world task evals and it held up really well on Vitest hook testing with `renderHookWithState` and backward compatibility checks for persisted data. 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. ## Validation - Ran `tessl skill review` before and after — score improved from 41% to 90% - All validation checks pass with 0 errors and 0 warnings (previously had 1 warning for unknown frontmatter key) - Docker commands verified against existing `docs/getting-started/README.md` and `docs/guides/deploy-with-docker.md` - Diff is 64 lines (44 insertions, 20 deletions) ## Related Issues N/A — this is an unsolicited improvement to the `product` agent skill. ### Check List - [x] I confirm that my contribution is made under the terms of the Apache 2.0 license. - [ ] I have verified `pnpm checks` passes with no errors. - [ ] I have verified `pnpm test` passes with no failures. - [x] I have covered new added functionality with unit tests if necessary. - [x] I have updated documentation if necessary. Thanks in advance 🙏
kmcginnes
left a comment
There was a problem hiding this comment.
Thanks for the contribution @yogesh-tessl! I appreciate you taking the time to analyze the skill and propose improvements.
I like several of the changes here: the frontmatter cleanup, the tighter summary sentence, the feature list with doc cross-references, and the architecture rewrite. However, I'm requesting changes on the quick start section and the database table (see inline comments), and I'd like to keep the "Core Purpose" section.
Also worth noting: these skill files will likely be in flux as I adopt a more structured approach to AI steering, so don't be surprised if things shift around soon.
| Graph Explorer is a React-based web application for visualizing and exploring graph data without writing queries. It supports multiple graph databases and query languages through a connector abstraction. | ||
|
|
||
| ## Core Purpose | ||
| ## Quickstart |
There was a problem hiding this comment.
The "Core Purpose" section describes the product's use case, which the agent can't derive from code alone. It helps the agent understand what problem Graph Explorer solves, not just what it is. I'd prefer to keep it since the vagueness is deliberate — it stays accurate as the app evolves.
| ```bash | ||
| docker pull public.ecr.aws/neptune/graph-explorer | ||
| docker run -p 80:80 -p 443:443 --env HOST=localhost public.ecr.aws/neptune/graph-explorer | ||
| ``` |
There was a problem hiding this comment.
This "Quickstart" section duplicates the user guide and isn't something the agent would typically need to perform. If it ever does, it can discover the quick start instructions from the existing docs via progressive disclosure. I'd drop this section to keep the skill focused on product context rather than setup steps.
| |---|---|---| | ||
| | Property Graph (LPG) | Gremlin | Amazon Neptune, Apache TinkerPop Gremlin Server, JanusGraph | | ||
| | Property Graph (LPG) | openCypher | Amazon Neptune, Amazon Neptune Analytics | | ||
| | RDF | SPARQL 1.1 | Amazon Neptune | |
There was a problem hiding this comment.
I like the intent here, but I worry this table is too prescriptive for an agent facing doc. These are providers we've tested, not an exhaustive set of what's supported. There are other Gremlin and SPARQL compatible databases that would work fine but aren't listed. Could we rename the column to "Example Databases" to frame these as known-good examples rather than a definitive list? Otherwise the agent might reject valid configurations just because they're not in the table.
Hey @kmcginnes 👋
ran your skills through
tessl skill reviewat work and found some targeted improvements for theproductskill. Here's the before/after:I focused on the
productskill since it had the most room to grow. It's the "front door" overview of Graph Explorer and was scoring lowest alongsideschema.Changes made to
productskilltoolsfrontmatter key that was triggering a validation warningdocs/features/connections.md,docs/architecture.md, etc.) for progressive disclosurealso stress-tested your
gitskill against a few real-world task evals and it held up really well on Vitest hook testing withrenderHookWithStateand backward compatibility checks for persisted data. 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.