/** * Schema definitions for AXM settings configuration. * * Settings define workspace configuration including sources, agents, and extensions. * * @experimental This API is unstable and may change without notice. */ import * as Schema from "effect/Schema"; import { ReleaseAgeExcludePatternSchema } from "../extensions/fqn-pattern.js"; /** * GitHub source host configuration. * * @experimental This API is unstable and may change without notice. */ declare const GitHubSourceHostConfigSchema: Schema.Struct<{ readonly name: Schema.String; readonly type: Schema.Literal<"github">; readonly url: Schema.URLFromString; }>; /** * GitLab source host configuration. * * @experimental This API is unstable and may change without notice. */ declare const GitLabSourceHostConfigSchema: Schema.Struct<{ readonly name: Schema.String; readonly type: Schema.Literal<"gitlab">; readonly url: Schema.URLFromString; }>; /** * Bitbucket source host configuration. * * @experimental This API is unstable and may change without notice. */ declare const BitbucketSourceHostConfigSchema: Schema.Struct<{ readonly name: Schema.String; readonly type: Schema.Literal<"bitbucket">; readonly url: Schema.URLFromString; }>; /** * Azure Repos source host configuration. * * @experimental This API is unstable and may change without notice. */ declare const AzureReposSourceHostConfigSchema: Schema.Struct<{ readonly name: Schema.String; readonly type: Schema.Literal<"azurerepos">; readonly url: Schema.URLFromString; }>; /** * Registry source host configuration. * * @experimental This API is unstable and may change without notice. */ declare const RegistrySourceHostConfigSchema: Schema.Struct<{ readonly name: Schema.String; readonly type: Schema.Literal<"registry">; readonly location: Schema.URLFromString; }>; /** * Discriminated union of source host configurations on the `type` field. * * Variants: github, gitlab, bitbucket, azurerepos, registry. * * @experimental This API is unstable and may change without notice. */ export declare const SourceHostConfigSchema: Schema.Union; readonly url: Schema.URLFromString; }>, Schema.Struct<{ readonly name: Schema.String; readonly type: Schema.Literal<"gitlab">; readonly url: Schema.URLFromString; }>, Schema.Struct<{ readonly name: Schema.String; readonly type: Schema.Literal<"bitbucket">; readonly url: Schema.URLFromString; }>, Schema.Struct<{ readonly name: Schema.String; readonly type: Schema.Literal<"azurerepos">; readonly url: Schema.URLFromString; }>, Schema.Struct<{ readonly name: Schema.String; readonly type: Schema.Literal<"registry">; readonly location: Schema.URLFromString; }>]>; /** * Inferred type for SourceHostConfig schema. * * @experimental This API is unstable and may change without notice. */ export type SourceHostConfig = Schema.Schema.Type; /** @experimental */ export type GitHubSourceHostConfig = Schema.Schema.Type; /** @experimental */ export type GitLabSourceHostConfig = Schema.Schema.Type; /** @experimental */ export type BitbucketSourceHostConfig = Schema.Schema.Type; /** @experimental */ export type AzureReposSourceHostConfig = Schema.Schema.Type; /** @experimental */ export type RegistrySourceHostConfig = Schema.Schema.Type; type SourceEntryObject = { readonly source: string; }; type EnabledEntryObject = SourceEntryObject & { readonly enabled?: boolean | undefined; }; export declare const MinimumReleaseAgeSchema: Schema.String; /** @experimental */ export type MinimumReleaseAge = Schema.Schema.Type; /** @experimental */ export type MinimumReleaseAgeExclude = ReadonlyArray; /** * Managed skill with source and optional config flags. * * @experimental This API is unstable and may change without notice. */ export declare const SkillEntryObjectSchema: Schema.Struct<{ readonly source: Schema.NonEmptyString; readonly enabled: Schema.optionalKey; readonly origin: Schema.optionalKey>; }>; /** * Union of skill entry forms: plain source string or object with source + enabled. * * Decodes to canonical `{ source, enabled }` form; encodes back to the most * compact JSON representation. * * @experimental This API is unstable and may change without notice. */ export declare const SkillEntrySchema: Schema.decodeTo>; }>, Schema.Union; readonly origin: Schema.optionalKey>; }>]>, never, never>; /** * Inferred type for SkillEntry schema. * * @experimental This API is unstable and may change without notice. */ export type SkillEntry = Schema.Schema.Type; /** * Skills map - maps skill names to skill entries. * * Keys must be valid skill names per agentskills.io specification: * - Max 64 characters * - Lowercase letters, numbers, and hyphens only * - Must not start or end with a hyphen * * Values are skill entries: plain source strings or objects with source + enabled. * * @experimental This API is unstable and may change without notice. */ export declare const SkillsMapSchema: Schema.$Record>; }>, Schema.Union; readonly origin: Schema.optionalKey>; }>]>, never, never>>; /** * Inferred type for SkillsMap schema. * * @experimental This API is unstable and may change without notice. */ export type SkillsMap = Schema.Schema.Type; /** * Managed rule with source and optional config flags. * * @experimental This API is unstable and may change without notice. */ export declare const RuleEntryObjectSchema: Schema.Struct<{ readonly source: Schema.NonEmptyString; readonly enabled: Schema.optionalKey; }>; /** * Union of rule entry forms: plain source string or object with source + enabled. * * @experimental This API is unstable and may change without notice. */ export declare const RuleEntrySchema: Schema.decodeTo, Schema.Union]>, never, never>; /** @experimental */ export type RuleEntry = Schema.Schema.Type; /** * Rules map - maps rule names to rule entries. * * @experimental This API is unstable and may change without notice. */ export declare const RulesMapSchema: Schema.$Record, Schema.Union]>, never, never>>; /** @experimental */ export type RulesMap = Schema.Schema.Type; /** * Managed hook with source and optional config flags. * * @experimental This API is unstable and may change without notice. */ export declare const HookEntryObjectSchema: Schema.Struct<{ readonly source: Schema.NonEmptyString; readonly enabled: Schema.optionalKey; }>; /** * Union of hook entry forms: plain source string or object with source + enabled. * * @experimental This API is unstable and may change without notice. */ export declare const HookEntrySchema: Schema.decodeTo, Schema.Union]>, never, never>; /** @experimental */ export type HookEntry = Schema.Schema.Type; /** * Hooks map - maps hook names to hook entries. * * @experimental This API is unstable and may change without notice. */ export declare const HooksMapSchema: Schema.$Record, Schema.Union]>, never, never>>; /** @experimental */ export type HooksMap = Schema.Schema.Type; export declare const KnowledgeEntryObjectSchema: Schema.Struct<{ readonly source: Schema.NonEmptyString; readonly enabled: Schema.optionalKey; readonly instructionEntry: Schema.optionalKey; }>; export declare const KnowledgeEntrySchema: Schema.decodeTo; }>, Schema.Union; readonly instructionEntry: Schema.optionalKey; }>]>, never, never>; export type KnowledgeEntry = Schema.Schema.Type; export declare const KnowledgeMapSchema: Schema.$Record; }>, Schema.Union; readonly instructionEntry: Schema.optionalKey; }>]>, never, never>>; export type KnowledgeMap = Schema.Schema.Type; /** * MCP server entry object with source. * * @experimental This API is unstable and may change without notice. */ export declare const McpServerEntryObjectSchema: Schema.Struct<{ readonly source: Schema.NonEmptyString; readonly enabled: Schema.optionalKey; readonly env: Schema.optionalKey, Schema.$Array]>>; readonly agents: Schema.optionalKey>>; }>; /** * Union of MCP server entry forms: plain source string or object with source + enabled + env. * * Decodes to canonical `{ source, enabled, env }` form; encodes back to the most * compact JSON representation. * * @experimental This API is unstable and may change without notice. */ export declare const McpServerEntrySchema: Schema.decodeTo>; readonly source: Schema.String; readonly command: Schema.optional; readonly args: Schema.optional>; readonly url: Schema.optional; readonly headers: Schema.optional>; readonly enabled: Schema.Boolean; readonly env: Schema.$Record; readonly agents: Schema.optional>>; }>, Schema.Struct<{ readonly kind: Schema.Literal<"inline">; readonly source: Schema.optional; readonly command: Schema.optional; readonly args: Schema.optional>; readonly url: Schema.optional; readonly headers: Schema.optional>; readonly enabled: Schema.Boolean; readonly env: Schema.$Record; readonly agents: Schema.optional>>; }>]>, Schema.Union; readonly command: Schema.optionalKey; readonly args: Schema.optionalKey>; readonly url: Schema.optionalKey; readonly headers: Schema.optionalKey>; readonly enabled: Schema.optionalKey; readonly env: Schema.optionalKey, Schema.$Array]>>; readonly agents: Schema.optionalKey>>; }>]>, never, never>; /** * Inferred type for McpServerEntry schema. * * @experimental This API is unstable and may change without notice. */ export type McpServerEntry = Schema.Schema.Type; export declare const isSourcedMcpServerEntry: (entry: McpServerEntry) => entry is McpServerEntry & { readonly source: string; }; export declare const isInlineMcpServerEntry: (entry: McpServerEntry) => entry is Extract; /** * MCP servers map - maps MCP server names to MCP server entries. * * Keys use the canonical MCP server name schema from the shared kernel. * * @experimental This API is unstable and may change without notice. */ export declare const McpServersMapSchema: Schema.$Record>; readonly source: Schema.String; readonly command: Schema.optional; readonly args: Schema.optional>; readonly url: Schema.optional; readonly headers: Schema.optional>; readonly enabled: Schema.Boolean; readonly env: Schema.$Record; readonly agents: Schema.optional>>; }>, Schema.Struct<{ readonly kind: Schema.Literal<"inline">; readonly source: Schema.optional; readonly command: Schema.optional; readonly args: Schema.optional>; readonly url: Schema.optional; readonly headers: Schema.optional>; readonly enabled: Schema.Boolean; readonly env: Schema.$Record; readonly agents: Schema.optional>>; }>]>, Schema.Union; readonly command: Schema.optionalKey; readonly args: Schema.optionalKey>; readonly url: Schema.optionalKey; readonly headers: Schema.optionalKey>; readonly enabled: Schema.optionalKey; readonly env: Schema.optionalKey, Schema.$Array]>>; readonly agents: Schema.optionalKey>>; }>]>, never, never>>; /** * Inferred type for McpServersMap schema. * * @experimental This API is unstable and may change without notice. */ export type McpServersMap = Schema.Schema.Type; /** * Managed subagent with source and optional config flags. * * @experimental This API is unstable and may change without notice. */ export declare const SubagentEntryObjectSchema: Schema.Struct<{ readonly source: Schema.NonEmptyString; readonly enabled: Schema.optionalKey; }>; /** * Union of subagent entry forms: plain source string or object with source + enabled. * * Decodes to canonical `{ source, enabled }` form; encodes back to the most * compact JSON representation. * * @experimental This API is unstable and may change without notice. */ export declare const SubagentEntrySchema: Schema.decodeTo, Schema.Union]>, never, never>; /** * Inferred type for SubagentEntry schema. * * @experimental This API is unstable and may change without notice. */ export type SubagentEntry = Schema.Schema.Type; /** * Subagents map - maps subagent names to subagent entries. * * Keys must be valid extension names per agentskills.io specification: * - Max 64 characters * - Lowercase letters, numbers, and hyphens only * - Must not start or end with a hyphen * * Values are subagent entries: plain source strings or objects with source + enabled. * * @experimental This API is unstable and may change without notice. */ export declare const SubagentsMapSchema: Schema.$Record, Schema.Union]>, never, never>>; /** * Inferred type for SubagentsMap schema. * * @experimental This API is unstable and may change without notice. */ export type SubagentsMap = Schema.Schema.Type; /** * Pack entry object with source. * * @experimental This API is unstable and may change without notice. */ export declare const PackEntryObjectSchema: Schema.Struct<{ readonly source: Schema.NonEmptyString; readonly enabled: Schema.optionalKey; }>; /** * Union of pack entry forms: plain source string or object with source. * * Decodes to canonical `{ source }` form and encodes back to a source string. * * @experimental This API is unstable and may change without notice. */ export declare const PackEntrySchema: Schema.decodeTo, Schema.Union]>, never, never>; /** * Inferred type for PackEntry schema. * * @experimental This API is unstable and may change without notice. */ export type PackEntry = Schema.Schema.Type; /** * Packs map - maps pack names to pack entries. * * Keys must be valid extension names per agentskills.io specification: * - Max 64 characters * - Lowercase letters, numbers, and hyphens only * - Must not start or end with a hyphen * * Values are pack entries: plain source strings or objects with source + enabled. * * @experimental This API is unstable and may change without notice. */ export declare const PacksMapSchema: Schema.$Record, Schema.Union]>, never, never>>; /** * Inferred type for PacksMap schema. * * @experimental This API is unstable and may change without notice. */ export type PacksMap = Schema.Schema.Type; /** * Workspace instruction-file propagation settings. * * @experimental This API is unstable and may change without notice. */ export declare const InstructionsConfigSchema: Schema.Struct<{ readonly fileName: Schema.optionalKey; readonly gitignoreAliases: Schema.optionalKey; }>; /** @experimental */ export type InstructionsConfig = Schema.Schema.Type; /** @experimental */ export type InstructionsConfigValue = false | InstructionsConfig; export declare const SkillsConfigSchema: Schema.Struct<{ readonly dir: Schema.optionalKey; }>; export declare const RulesConfigSchema: Schema.Struct<{ readonly dir: Schema.optionalKey; }>; export declare const HooksConfigSchema: Schema.Struct<{ readonly dir: Schema.optionalKey; }>; export declare const SubagentsConfigSchema: Schema.Struct<{ readonly dir: Schema.optionalKey; }>; export declare const McpServersConfigSchema: Schema.Struct<{ readonly dir: Schema.optionalKey; }>; export declare const PacksConfigSchema: Schema.Struct<{ readonly dir: Schema.optionalKey; }>; export declare const KnowledgeConfigSchema: Schema.Struct<{ readonly dir: Schema.optionalKey; readonly instructions: Schema.optionalKey; }>; /** @experimental */ export type KnowledgeConfig = Schema.Schema.Type; /** Workspace-level publication defaults. */ export declare const WorkspacePublishOptionsSchema: Schema.Struct<{ readonly defaultVisibility: Schema.optional>; }>; /** @experimental This API is unstable and may change without notice. */ export type WorkspacePublishOptions = Schema.Schema.Type; /** * Each catalog extension type's feature-level config schema, or `null` where * none exists yet. * * Total by construction: a new extension type fails compile here until its * settings coverage is decided. The parity conformance suite reads this map, * and every `null` must be matched by a ledger row. * * @experimental This API is unstable and may change without notice. */ export declare const SETTINGS_CONFIG_SCHEMA_BY_TYPE: { readonly skill: Schema.Struct<{ readonly dir: Schema.optionalKey; }>; readonly "mcp-server": Schema.Struct<{ readonly dir: Schema.optionalKey; }>; readonly subagent: Schema.Struct<{ readonly dir: Schema.optionalKey; }>; readonly rule: Schema.Struct<{ readonly dir: Schema.optionalKey; }>; readonly hook: Schema.Struct<{ readonly dir: Schema.optionalKey; }>; readonly knowledge: Schema.Struct<{ readonly dir: Schema.optionalKey; readonly instructions: Schema.optionalKey; }>; }; /** * Canonical key order for settings properties. * * Used by `writeSettingsAtPath` for new files and to place new top-level keys in * existing files whose recognized keys already follow this order. * * @experimental This API is unstable and may change without notice. */ export declare const SETTINGS_KEY_ORDER: ReadonlyArray; export declare const SettingsSchema: Schema.StructWithRest; readonly owner: Schema.optionalKey]>>; readonly publish: Schema.optionalKey>; }>]>>; readonly minimumReleaseAge: Schema.optionalKey>; readonly minimumReleaseAgeExclude: Schema.optionalKey; readonly type: Schema.Union, Schema.Literal<"*">]>; readonly name: Schema.Union, Schema.Literal<"*">]>; }>>, Schema.String, never, never>>>; readonly agents: Schema.optionalKey>>; readonly instructionFiles: Schema.optionalKey, Schema.Struct<{ readonly fileName: Schema.optionalKey; readonly gitignoreAliases: Schema.optionalKey; }>]>>; readonly sources: Schema.optionalKey; readonly url: Schema.URLFromString; }>, Schema.Struct<{ readonly name: Schema.String; readonly type: Schema.Literal<"gitlab">; readonly url: Schema.URLFromString; }>, Schema.Struct<{ readonly name: Schema.String; readonly type: Schema.Literal<"bitbucket">; readonly url: Schema.URLFromString; }>, Schema.Struct<{ readonly name: Schema.String; readonly type: Schema.Literal<"azurerepos">; readonly url: Schema.URLFromString; }>, Schema.Struct<{ readonly name: Schema.String; readonly type: Schema.Literal<"registry">; readonly location: Schema.URLFromString; }>]>>>; readonly skills: Schema.optionalKey>; }>, Schema.Union; readonly origin: Schema.optionalKey>; }>]>, never, never>>]>>; readonly skillsConfig: Schema.optionalKey; }>>; readonly rules: Schema.optionalKey, Schema.Union]>, never, never>>]>>; readonly rulesConfig: Schema.optionalKey; }>>; readonly hooks: Schema.optionalKey, Schema.Union]>, never, never>>]>>; readonly hooksConfig: Schema.optionalKey; }>>; readonly knowledge: Schema.optionalKey; }>, Schema.Union; readonly instructionEntry: Schema.optionalKey; }>]>, never, never>>]>>; readonly knowledgeConfig: Schema.optionalKey; readonly instructions: Schema.optionalKey; }>]>>; readonly subagents: Schema.optionalKey, Schema.Union]>, never, never>>]>>; readonly subagentsConfig: Schema.optionalKey; }>>; readonly packs: Schema.optionalKey, Schema.Union]>, never, never>>]>>; readonly packsConfig: Schema.optionalKey; }>>; readonly mcpServers: Schema.optionalKey>; readonly source: Schema.String; readonly command: Schema.optional; readonly args: Schema.optional>; readonly url: Schema.optional; readonly headers: Schema.optional>; readonly enabled: Schema.Boolean; readonly env: Schema.$Record; readonly agents: Schema.optional>>; }>, Schema.Struct<{ readonly kind: Schema.Literal<"inline">; readonly source: Schema.optional; readonly command: Schema.optional; readonly args: Schema.optional>; readonly url: Schema.optional; readonly headers: Schema.optional>; readonly enabled: Schema.Boolean; readonly env: Schema.$Record; readonly agents: Schema.optional>>; }>]>, Schema.Union; readonly command: Schema.optionalKey; readonly args: Schema.optionalKey>; readonly url: Schema.optionalKey; readonly headers: Schema.optionalKey>; readonly enabled: Schema.optionalKey; readonly env: Schema.optionalKey, Schema.$Array]>>; readonly agents: Schema.optionalKey>>; }>]>, never, never>>]>>; readonly mcpServersConfig: Schema.optionalKey; }>>; readonly lint: Schema.optionalKey>>; }>]>>; }>, readonly [Schema.$Record]>; /** * Inferred type for Settings schema. * * @experimental This API is unstable and may change without notice. */ export type Settings = Schema.Schema.Type; /** * The recognized top-level settings keys, derived from the schema. * * @experimental This API is unstable and may change without notice. */ export declare const SETTINGS_KNOWN_KEYS: ReadonlySet; export {}; //# sourceMappingURL=schema.d.ts.map