What problem does it solve? Writing correct Go code against Neo4j requires choosing between ExecuteQuery, managed transactions, and explicit transactions, handling driver lifecycle, and avoiding common pitfalls like unsafe type assertions, missing database names, and leaked sessions. This Skill provides v6-accurate patterns and checklists so generated code follows driver best practices. ## Core Features & Use Cases - API Selection Guidance: Decision table for choosing between neo4j.ExecuteQuery, session.ExecuteRead/Write, session.BeginTransaction, and session.Run based on retry, streaming, and coordination needs. - Production Patterns: Driver lifecycle with VerifyConnectivity, context timeouts, UNWIND batch writes, causal consistency with bookmarks, and typed record extraction via GetRecordValue[T] generics. - Error Handling & Troubleshooting: Neo4jError/ConnectivityError inspection with errors.As, plus a table of common failures (pool exhaustion, panics on type assertion, CALL IN TRANSACTIONS inside managed transactions) and their fixes. - Use Case: You are building a Go service that reads and writes a Neo4j Aura instance. Use this Skill to generate the driver setup, a repository wrapper with parameterized queries, and batched MERGE writes that survive transient cluster errors. ## Quick Start Ask the AI to write a Go function that connects to Neo4j using the v6 driver, runs a parameterized read query with ExecuteQuery, and handles errors with proper type-safe record extraction.