Documentation Index
Fetch the complete documentation index at: https://mintlify.com/neo4j-labs/create-context-graph/llms.txt
Use this file to discover all available pages before exploring further.
Synopsis
PROJECT_NAME is optional. When --domain and --framework are both provided without a positional argument, a kebab-case slug is auto-generated (for example, healthcare-pydanticai-app). When neither the project name nor the required flags are present, the interactive wizard launches automatically.
Run
create-context-graph --list-domains to see all 22 available domain IDs before scaffolding.Project options
Human-readable project name. Used as the root directory name (after converting to a kebab-case slug). Optional — if omitted while
--domain and --framework are supplied, the name is auto-generated as {domain}-{framework}-app.Domain ID that selects the industry ontology to use. Examples:
financial-services, healthcare, software-engineering. Run --list-domains to see the full list of 22 built-in IDs. Mutually exclusive with --custom-domain in terms of ontology source, though both set the domain context.Agent framework to scaffold the backend with. Accepted values:
The value is case-insensitive.
| Value | Display name | Required API key |
|---|---|---|
pydanticai | PydanticAI | ANTHROPIC_API_KEY |
claude-agent-sdk | Claude Agent SDK | ANTHROPIC_API_KEY |
strands | Strands | ANTHROPIC_API_KEY |
google-adk | Google ADK | GOOGLE_API_KEY |
openai-agents | OpenAI Agents SDK | OPENAI_API_KEY |
langgraph | LangGraph | ANTHROPIC_API_KEY |
crewai | CrewAI | ANTHROPIC_API_KEY |
anthropic-tools | Anthropic Tools (Agentic Loop) | ANTHROPIC_API_KEY |
Directory where the generated project is written. Defaults to
./<project-slug> in the current working directory. The target directory must not already exist or must be empty.Data options
Generate synthetic demo data and write it to
data/fixtures.json in the output project. Uses static placeholder data drawn from domain-specific name pools by default. Pass --anthropic-api-key to upgrade to realistic LLM-generated data (80–90 entities, 25+ documents, 8–12 decision traces).Convenience shortcut that expands to
--reset-database --demo-data --ingest. Scaffolds the project, generates demo data, clears the Neo4j database, and ingests everything in a single step.Ingest generated fixture data into Neo4j immediately after scaffolding. Requires a reachable Neo4j instance. Uses
neo4j-agent-memory MemoryClient when available, falling back to the direct neo4j driver.Clear all existing data from Neo4j (
MATCH (n) DETACH DELETE n) before ingesting. Useful when switching domains on a shared Neo4j instance to avoid cross-domain entity collisions.SaaS connector to enable. Can be specified multiple times to enable several connectors. Each connector imports real data from the named service instead of (or in addition to) synthetic demo data.Supported values:
github, slack, jira, notion, gmail, gcal, salesforce.Connectors run at scaffold time and are also generated into the project so you can re-import with make import.Neo4j options
Neo4j Bolt connection URI. Accepts
neo4j://, neo4j+s://, bolt://, and bolt+s:// schemes.Environment variable: NEO4J_URINeo4j authentication username.Environment variable:
NEO4J_USERNAMENeo4j authentication password.Environment variable:
NEO4J_PASSWORDPath to a Neo4j Aura
.env file that contains NEO4J_URI, NEO4J_USERNAME, and NEO4J_PASSWORD. When provided, these values override the individual flags and the neo4j_type is automatically set to aura. You can download this file directly from the Neo4j Aura console.Use
@johnymontana/neo4j-local for a lightweight local Neo4j instance. No Docker required, but Node.js must be installed. Sets neo4j_type to local and adds make neo4j-start / make neo4j-stop targets to the generated Makefile.API keys
Anthropic API key (
sk-ant-...). Enables two features:- LLM-powered data generation — realistic entity names, professional documents, and multi-step decision traces via the Anthropic API when
--demo-datais passed. - Custom domain generation — required when
--custom-domainis used.
ANTHROPIC_API_KEYOpenAI API key. Required at runtime for the
openai-agents framework. Also used by LangGraph when configured with OpenAI models. When set in the generated project’s .env, conversation memory automatically upgrades from local sentence-transformers embeddings to OpenAI text-embedding-3-small.Environment variable: OPENAI_API_KEYGoogle / Gemini API key. Required at runtime for the
google-adk framework. A warning is shown during scaffolding if google-adk is selected without this key.Environment variable: GOOGLE_API_KEYAPI keys passed on the command line are written into the generated project’s
.env file. The .env is listed in .gitignore and is never committed to version control. Use environment variables in CI/CD pipelines rather than passing keys inline.Advanced options
Natural language description of a custom domain. The LLM generates a complete ontology YAML — entity types, relationships, agent tools, system prompt, demo scenarios, and document templates — from your description. Requires
--anthropic-api-key.Example: "veterinary clinic managing patients, owners, appointments, and treatments"Print a summary of what would be generated (project name, slug, domain, framework, Neo4j type, data source, output path) and exit without creating any files. Useful for validating flag combinations in scripts.
Enable verbose
DEBUG-level logging during scaffolding and data generation. Useful for diagnosing template rendering errors or LLM API failures.Print all available domain IDs and their display names, then exit. No other flags are required.
Print the installed package version and exit.
Show the help message with a summary of all options and exit.
Interactive vs. non-interactive mode
The CLI operates in two modes depending on which flags are provided. Interactive mode launches when--domain or --framework is missing. The 7-step Questionary wizard collects all configuration interactively: project name, domain, framework, data source, Neo4j connection type, and API keys.
Non-interactive mode runs when --domain (or --custom-domain) and --framework are both provided. The wizard is skipped entirely. PROJECT_NAME is optional — if omitted, the slug is auto-generated as {domain}-{framework}-app. This mode is safe for use in CI/CD pipelines and automated scripts.
Environment variables
CLI flags always take precedence over environment variables. Set these in your shell profile or a.env file before running the tool to avoid repeating credentials on every invocation.
| Variable | Corresponding flag |
|---|---|
NEO4J_URI | --neo4j-uri |
NEO4J_USERNAME | --neo4j-username |
NEO4J_PASSWORD | --neo4j-password |
ANTHROPIC_API_KEY | --anthropic-api-key |
OPENAI_API_KEY | --openai-api-key |
GOOGLE_API_KEY | --google-api-key |
Examples
Launch the interactive wizard
Scaffold without any prompts
Auto-generate the project name
When--domain and --framework are provided but PROJECT_NAME is omitted, a slug is generated automatically:
