Authoritative reference for the neo4j-agent-memory Python package — a graph-native memory system for AI agents built on Neo4j — and for the hosted service (NAMS) at memory.neo4jlabs.com. Use this skill whenever the user mentions neo4j-agent-memory, agent memory with Neo4j, context graphs, the POLE+O model, MemoryClient/MemorySettings, the memory MCP server, or any of the framework integrations (LangChain, PydanticAI, CrewAI, AWS Strands, Google ADK, Microsoft Agent Framework, OpenAI Agents, LlamaIndex). Also use when the user mentions the hosted service at memory.neo4jlabs.com, NAMS, the Neo4j Agent Memory Service, the `nams_` API key prefix, or the hosted MCP endpoint. Also use when writing documentation, blog posts, tutorials, PRDs, or code samples for the project, when comparing agent memory approaches, or when positioning graph-native memory against vector-only approaches — even if the user doesn't explicitly name the package.
60
70%
Does it follow best practices?
Impact
—
No eval scenarios have been run
Risky
Do not use without reviewing
Fix and improve this skill with Tessl
tessl review fix ./neo4j-agent-memory-skill/SKILL.mdSecurity
3 findings — 1 high severity, 2 medium severity. You should review these findings carefully before considering using this skill.
The skill handles credentials insecurely by requiring the agent to include secret values verbatim in its generated output. This exposes credentials in the agent’s context and conversation history, creating a risk of data exfiltration.
Insecure credential handling detected (high risk: 0.90). The skill contains command-line and config examples that embed secrets directly (e.g., --password <neo4j-password>, Authorization: Bearer nams_..., OPENAI_API_KEY: "sk-..."), which would require an agent to insert or output secret values verbatim if users supply them.
The skill exposes the agent to untrusted, user-generated content from public third-party sources, creating a risk of indirect prompt injection. This includes browsing arbitrary URLs, reading social media posts or forum comments, and analyzing content from unknown websites.
Third-party content exposure detected (medium risk: 0.65). The skill’s runtime workflow can ingest outsider-authored free text via the hosted NAMS service’s MCP/REST tool calls (e.g., conversation messages and reasoning traces provided by external users/agents), which are then stored and later returned as LLM context through `memory_get_context`/`get_context`.
Detected hidden or invisible Unicode characters (Format/Cf or Control/Cc categories) in the component’s content. These characters are invisible when rendered but are still processed by AI models, and attackers use them to smuggle instructions past human review — for example, zero-width spaces, bidirectional overrides, invisible formatters, or Unicode Tag characters (U+E0000–U+E007F) that encode an entire hidden message. Severity escalates to high when three or more distinct hidden character types are present, or when a hidden tag-encoded message is successfully decoded, as these strongly indicate intentional obfuscation.
Hidden Unicode characters detected (1 type(s) found)
6d44d31
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.