Skip to content

Configuration

CLI

Configuration is stored in .archcore/settings.json. This file is created during archcore init and managed through archcore config.

{
"sync": "none"
}
{
"sync": "none",
"language": "ru"
}
FieldTypeRequiredDescription
syncstringYesSync type: none, cloud, or on-prem
project_idintegerNoProject identifier for cloud/on-prem sync
archcore_urlstringNoServer URL for on-prem sync
languagestringNoLanguage code for document content
globalsarrayNoRead-only external knowledge bases to mount. See Global sources

Documents stay local. No server communication.

{
"sync": "none"
}

Allowed fields: sync, language, globals Forbidden fields: project_id, archcore_url

Syncs to https://app.archcore.ai.

{
"sync": "cloud",
"project_id": 42
}

Allowed fields: sync, project_id, language, globals Forbidden fields: archcore_url

Syncs to a self-hosted Archcore server.

{
"sync": "on-prem",
"project_id": 42,
"archcore_url": "https://archcore.internal.company.com"
}

Allowed fields: sync, project_id, archcore_url, language, globals Required fields: archcore_url

The globals array mounts other .archcore/ knowledge bases — company standards, platform conventions, a monorepo root — into your project read-only. It is allowed for every sync type.

{
"sync": "none",
"globals": [
{ "id": "company-standards", "path": "../company-standards/.archcore" }
]
}
FieldRequiredDescription
idYesStable identifier; becomes the document source_id. Lowercase alphanumeric with hyphens (^[a-z0-9][a-z0-9-]*$), not the reserved value local, unique within the array
pathYesPoints at the global’s .archcore directory. Relative (including ../), absolute, or in-tree under .archcore/global/

Every declared global is mandatory — if its directory is absent, the MCP server fails fast at startup. Globals are read-only everywhere outside the MCP read tools, and local documents take precedence over a same-topic global.

See Global sources for the full model, vendoring, and the monorepo-root pattern.

  • sync must be one of: none, cloud, on-prem
  • Fields must be consistent with the sync type (e.g., archcore_url is forbidden for cloud)
  • language must not contain spaces
  • archcore_url must not be empty when sync is on-prem
  • Each globals entry must have a non-empty id (lowercase alphanumeric with hyphens, not local) and non-empty path; id must be unique across the array
  • Optional fields use omitempty — omitted fields use code-level defaults
Terminal window
# View current sync type
archcore config
# Get a specific value
archcore config get language
# Set a value
archcore config set language en