Skip to main content

Interface: SpecdConfig

Defined in: packages/core/src/application/specd-config.ts:140

Fully-resolved project configuration derived from specd.yaml.

All paths are absolute. isExternal is inferred — not declared in the YAML. Delivery mechanisms (@specd/cli, @specd/mcp) receive a SpecdConfig from ConfigLoader and pass it to createKernel() or individual use-case factory functions.

Properties

approvals

readonly approvals: object

Defined in: packages/core/src/application/specd-config.ts:152

Approval gate settings (both default to false).

signoff

readonly signoff: boolean

spec

readonly spec: boolean


configPath

readonly configPath: string

Defined in: packages/core/src/application/specd-config.ts:144

Absolute path to the specd-owned config root.


context?

readonly optional context?: readonly SpecdContextEntry[]

Defined in: packages/core/src/application/specd-config.ts:156

Freeform context entries prepended to the compiled context.


contextExcludeSpecs?

readonly optional contextExcludeSpecs?: readonly string[]

Defined in: packages/core/src/application/specd-config.ts:165

Project-level context spec exclude patterns. Always applied regardless of active workspace.


contextIncludeSpecs?

readonly optional contextIncludeSpecs?: readonly string[]

Defined in: packages/core/src/application/specd-config.ts:161

Project-level context spec include patterns. Always applied regardless of active workspace. Defaults to ['default:*'] when absent.


contextMode?

readonly optional contextMode?: SpecdContextMode

Defined in: packages/core/src/application/specd-config.ts:176

Controls how CompileContext renders specs in the compiled context.

  • 'list' — render only spec IDs with source/mode metadata.
  • 'summary' (default) — render spec catalogue entries (title + description).
  • 'full' — render all collected specs with full content.
  • 'hybrid' — render direct change specs in full when included, all others as summary.

Project-level only — not valid inside workspace entries.


llmOptimizedContext?

readonly optional llmOptimizedContext?: boolean

Defined in: packages/core/src/application/specd-config.ts:178

When true, specd may invoke an LLM for enriched output (default: false).


logging?

readonly optional logging?: SpecdLoggingConfig

Defined in: packages/core/src/application/specd-config.ts:154

Project-level logging configuration.


plugins?

readonly optional plugins?: Readonly<{ agents?: readonly object[]; }>

Defined in: packages/core/src/application/specd-config.ts:184

Declared plugins grouped by type (currently agents).


projectRoot

readonly projectRoot: string

Defined in: packages/core/src/application/specd-config.ts:142

Absolute path to the directory containing the active specd.yaml.


schemaOverrides?

readonly optional schemaOverrides?: SchemaOperations

Defined in: packages/core/src/application/specd-config.ts:182

Inline schema override operations from specd.yaml.


schemaPlugins?

readonly optional schemaPlugins?: readonly string[]

Defined in: packages/core/src/application/specd-config.ts:180

Schema plugin references from specd.yaml, in declaration order.


schemaRef

readonly schemaRef: string

Defined in: packages/core/src/application/specd-config.ts:146

Schema reference string as declared in specd.yaml (e.g. '@specd/schema-std').


storage

readonly storage: SpecdStorageConfig

Defined in: packages/core/src/application/specd-config.ts:150

Resolved storage paths.


workspaces

readonly workspaces: readonly SpecdWorkspaceConfig[]

Defined in: packages/core/src/application/specd-config.ts:148

All configured workspaces. Must contain exactly one name === 'default' entry.