Skip to content

Directory Structure

The .nexuscore/ directory stores NexusCore's configuration, skills, memory, checkpoints, and credentials. It exists at two levels: user-level (global) and project-level (per workspace).

User-Level (~/.nexuscore/)

The user-level directory stores global configuration and data shared across all projects.

~/.nexuscore/
├── config.yaml          # User configuration (models, agent, tools, sync)
├── credentials          # Auth tokens — refresh token for Nexus Suite (mode 0600)
├── memory/              # Persistent memory store
│   ├── default.db       # Default memory profile
│   ├── work.db          # Custom memory profile
│   └── personal.db      # Custom memory profile
├── skills/              # Installed skills (from Skills Hub or manually added)
│   ├── code-reviewer/
│   │   ├── manifest.json
│   │   └── prompt.md
│   └── pr-reviewer/
│       ├── manifest.json
│       └── prompt.md
├── checkpoints/         # Saved workspace checkpoints (auto and manual)
│   ├── 2024-01-15T10-30-00/
│   │   ├── metadata.json
│   │   └── files/
│   └── 2024-01-15T11-00-00/
│       ├── metadata.json
│       └── files/
└── logs/                # Agent session logs
    └── 2024-01-15.log

Project-Level (.nexuscore/)

The project-level directory stores workspace-specific configuration and data. Place it in your project root.

my-project/
└── .nexuscore/
    ├── config.yaml      # Project-specific config overrides
    ├── mcp.json         # MCP server connections for this workspace
    ├── skills/          # Project-local skills (version-controlled)
    │   └── project-conventions/
    │       ├── manifest.json
    │       └── prompt.md
    └── memory/          # Project-scoped memory
        └── project.db

Project-level config overrides user-level config for that workspace. This is useful for:

  • Setting project-specific model preferences
  • Defining MCP server connections
  • Sharing project-local skills with your team via version control

Key Files

config.yaml

The main configuration file. See CLI Configuration for the full format.

credentials

Stores the Nexus Suite refresh token for authenticated sessions. This file is created by nexus-cli auth login and has restricted permissions.

WARNING

Never commit credentials to version control. Add ~/.nexuscore/credentials to your global gitignore.

mcp.json

Defines MCP server connections for the workspace. See MCP Discovery for the format.

memory/*.db

SQLite databases storing the agent's persistent memory. Each file represents a memory profile (default, work, personal, or custom).

checkpoints/

Workspace checkpoints created automatically before agent file operations, or manually via the command palette. Each checkpoint contains metadata and copies of affected files.

File Permissions

FileModeDescription
credentials0600Auth tokens — readable only by owner
config.yaml0644Configuration — readable by all
memory/*.db0600Memory databases — readable only by owner
logs/*.log0600Session logs — readable only by owner

Version Control

For your project's .gitignore:

gitignore
# NexusCore local data
.nexuscore/memory/
.nexuscore/checkpoints/

For your global ~/.gitignore:

gitignore
# NexusCore credentials
.nexuscore/credentials
.nexuscore/logs/

Files safe to commit

These project-level files are safe (and recommended) to commit:

  • .nexuscore/config.yaml — Project-specific settings
  • .nexuscore/mcp.json — MCP server connections
  • .nexuscore/skills/ — Project-local skills

Released under the MIT License.