CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

neo4j-snowflake-graph-analytics-skill

Run Neo4j Graph Analytics algorithms (PageRank, Louvain, WCC, Dijkstra, KNN, Node2Vec, FastRP, GraphSAGE) directly inside Snowflake without moving data. Use when running graph algorithms against Snowflake tables via the Neo4j Snowflake Native App ("GDS Snowflake", "graph algorithms in Snowflake", "Neo4j Graph Analytics"). Covers the explore → prepare projection views → project-compute-write flow, the strict view/column type rules the graph engine requires, exact SQL CALL syntax, and privilege setup in both modes — app-identity grants and execute-as-user / per-user PAT auth (programmatic access token, set_enable_custom_credentials, register_user_role, caller grants). Does NOT cover Cypher or Neo4j DBMS queries — use neo4j-cypher-skill. Does NOT cover Aura Graph Analytics — use neo4j-aura-graph-analytics-skill. Does NOT cover self-managed GDS — use neo4j-gds-skill.

2.08x
Quality

91%

Does it follow best practices?

Impact

100%

2.08x

2 of 3 eval scenarios. Add 1 more for a full score.

SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

82%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A strong, dense operational skill: fully executable SQL, an explicit end-to-end flow, exact error-message remediation, and a well-signaled parameter reference. The main improvement levers are moving an inline validation checkpoint (view population / ID matching) between Steps 2 and 3, and splitting the deep execute-as-user setup or troubleshooting detail into references to slim the main file.

Suggestions

Add an inline validation checkpoint at the Step 2 → Step 3 boundary — e.g., a query verifying each relationship view's SOURCENODEID/TARGETNODEID all match a NODEID and that views are non-empty — rather than surfacing that check only in the Troubleshooting table.

Consider moving the execute-as-user Part B walkthrough (PAT minting, secret storage, rotation/rollback SQL) into a references file (e.g., references/execute-as-user.md) and keeping a short mode-selection summary inline, since most users will use the default app-identity mode.

Trim the promotional opening line ("graph algorithm power inside Snowflake") and fold the Chaining section's duplicated orientation guidance into the Flow step to reduce token overhead.

DimensionReasoningScore

Conciseness

No space is spent teaching concepts Claude already knows — every section is engine-specific detail (casting rules, compute pools, PAT lifecycle) that Claude cannot infer. Minor trim opportunities remain: the promotional opener "graph algorithm power inside Snowflake", and the ~90-line execute-as-user SQL block sits at the edge of what an overview should carry. Efficient but not uniformly lean; above the level-3 anchor ('some unnecessary explanation') yet short of 'every token earns its place'.

4 / 5

Actionability

Copy-paste-ready SQL throughout: GET_DDL / INFORMATION_SCHEMA inspection, complete CREATE VIEW examples with exact casts, a fully annotated algorithm CALL with every config part explained, complete grant scripts for both auth modes, PAT mint/rotate/revoke statements, and a troubleshooting table keyed to exact error strings ("Column nodeId not found", "Network policy is required", "no role registered for <user>"). Fully executable with no pseudocode gaps.

5 / 5

Workflow Clarity

A clear 4-step sequence (explore → prepare projection views → project-compute-write → inspect) with load-bearing warnings ("Don't jump straight to a CALL — most failures come from skipping the data-preparation step"), per-algorithm orientation guidance, a closing checklist, and an error-message→fix feedback table. Validation is reactive rather than inline: there is no checkpoint between view creation and the CALL (e.g., verify view populations or that every SOURCENODEID matches a NODEID before running) — that check only appears as a troubleshooting row. Between anchors 4 and 5; the sequence and recovery paths are strong but explicit in-flow validation steps are missing.

4 / 5

Progressive Disclosure

One real, verified, one-level-deep reference, clearly signaled in the right place: "For complete algorithm compute/write parameter reference, see [references/algorithms.md](references/algorithms.md)." SKILL.md serves as an algorithm index (procedure names + use cases) while parameters live in the reference — an appropriate split. However, substantial operational depth (the full execute-as-user privilege walkthrough, algorithm-specific notes, and the long troubleshooting matrix) stays inline in a 524-line SKILL.md where some of it could be split into further references. Good structure with minor organization gaps — between anchors 4 and 5.

4 / 5

Total

17

/

20

Passed

Description

100%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

An exemplary description: concrete capabilities, explicit 'Use when' triggers with natural synonyms, and explicit negative boundaries that route Cypher, Aura, and self-managed GDS workloads to sibling skills. Its only cost is length, but every clause carries routing or capability information.

DimensionReasoningScore

Specificity

Names eight concrete algorithms (PageRank, Louvain, WCC, Dijkstra, KNN, Node2Vec, FastRP, GraphSAGE), the explore → prepare → project-compute-write flow, view/column type rules, exact SQL CALL syntax, and both privilege modes down to specific procedures (set_enable_custom_credentials, register_user_role, caller grants). Comprehensive concrete actions with no vague language.

5 / 5

Completeness

Explicitly answers both: what ("Run Neo4j Graph Analytics algorithms ... directly inside Snowflake without moving data. Covers the ... flow, the strict view/column type rules ..., exact SQL CALL syntax, and privilege setup in both modes") and when ("Use when running graph algorithms against Snowflake tables via the Neo4j Snowflake Native App"), with concrete trigger phrases in quotes.

5 / 5

Trigger Term Quality

Includes the natural phrases users would say: "graph algorithms in Snowflake", "GDS Snowflake", "Neo4j Graph Analytics", "Neo4j Snowflake Native App". Synonym and product-name coverage is complete; no common variation is missing.

5 / 5

Distinctiveness Conflict Risk

Three explicit disambiguation clauses route adjacent use cases to sibling skills ("Does NOT cover Cypher or Neo4j DBMS queries — use neo4j-cypher-skill"; "Does NOT cover Aura Graph Analytics"; "Does NOT cover self-managed GDS"), giving it a clear niche with minimal conflict risk.

5 / 5

Total

20

/

20

Passed

Validation

87%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

skill_md_line_count

SKILL.md is long (525 lines); consider splitting into references/ and linking

Warning

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

14

/

16

Passed

Repository

neo4j-contrib/neo4j-skills

Path

neo4j-snowflake-graph-analytics-skill/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.