@agimon-ai/po-major-mode 0.0.0-alpha.2 → 0.0.0-alpha.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/extensions/mcp.cjs.map +1 -1
- package/dist/extensions/mcp.d.mts +1 -1
- package/dist/extensions/mcp.mjs.map +1 -1
- package/dist/extensions/server.cjs.map +1 -1
- package/dist/extensions/server.d.mts +1 -1
- package/dist/extensions/server.mjs.map +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.mts +1 -1
- package/dist/index.mjs +1 -1
- package/dist/index.mjs.map +1 -1
- package/llms.txt +2 -2
- package/package.json +13 -13
- package/src/prompts/po-author-major-mode/references/modes-contract.md +1 -1
package/README.md
CHANGED
|
@@ -39,7 +39,7 @@ set.
|
|
|
39
39
|
|
|
40
40
|
## Help guidance
|
|
41
41
|
|
|
42
|
-
This package registers `po-author-major-mode` with the session-local `
|
|
42
|
+
This package registers `po-author-major-mode` with the session-local `po/help` Cordis
|
|
43
43
|
service. Registration is inert until `@agimon-ai/po-help` is active. Once active, the Help
|
|
44
44
|
skill routes the AI through this package's validated [`llms.txt`](./llms.txt) index.
|
|
45
45
|
|
|
@@ -52,7 +52,7 @@ so the guidance is versioned with the parser and runtime that consume it.
|
|
|
52
52
|
A major-mode change alters which extensions load, and Pi freezes the CLI `--extension` list at
|
|
53
53
|
construction. So the disposition depends on how the session started:
|
|
54
54
|
|
|
55
|
-
- **synchronized** (`
|
|
55
|
+
- **synchronized** (`po`, or regular `pi` after `po sync`): the session composes its own
|
|
56
56
|
extension set on every load, so the new layers arrive with a `pi-reload`. If the target
|
|
57
57
|
composition has no synchronized bundle yet, the transition reports `sync-required` and asks for
|
|
58
58
|
`po sync`.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.cjs","names":["defineMcpSkill","readPackageResource","defineMcpPlugin","skillPoAuthorMajorMode"],"sources":["../../src/extensions/workspaces/sessions/(backend)/skill/po-author-major-mode.mcp.ts","../../generated/mcp.ts"],"sourcesContent":["import { defineMcpSkill } from '@agimon-ai/po-core/mcpFacet';\nimport { readPackageResource } from '@agimon-ai/po-core/serverFacet';\n\nexport default defineMcpSkill({\n name: 'po-author-major-mode',\n description:\n \"Configure Po default packages, layers, extensions, hook groups, and named major modes. Use when creating or editing ~/.po/modes.yaml or a repository's .po/modes.yaml, choosing a default mode, or diagnosing which behavior a mode activates.\",\n read: () => readPackageResource(import.meta.url, 'src/prompts/po-author-major-mode/SKILL.md'),\n});\n","// Generated by @agimon-ai/po-build. Do not edit by hand.\nimport { defineMcpPlugin, type
|
|
1
|
+
{"version":3,"file":"mcp.cjs","names":["defineMcpSkill","readPackageResource","defineMcpPlugin","skillPoAuthorMajorMode"],"sources":["../../src/extensions/workspaces/sessions/(backend)/skill/po-author-major-mode.mcp.ts","../../generated/mcp.ts"],"sourcesContent":["import { defineMcpSkill } from '@agimon-ai/po-core/mcpFacet';\nimport { readPackageResource } from '@agimon-ai/po-core/serverFacet';\n\nexport default defineMcpSkill({\n name: 'po-author-major-mode',\n description:\n \"Configure Po default packages, layers, extensions, hook groups, and named major modes. Use when creating or editing ~/.po/modes.yaml or a repository's .po/modes.yaml, choosing a default mode, or diagnosing which behavior a mode activates.\",\n read: () => readPackageResource(import.meta.url, 'src/prompts/po-author-major-mode/SKILL.md'),\n});\n","// Generated by @agimon-ai/po-build. Do not edit by hand.\nimport { defineMcpPlugin, type PoMcpSessionPlugin } from '@agimon-ai/po-core/mcpFacet';\n\nimport skillPoAuthorMajorMode from '../src/extensions/workspaces/sessions/(backend)/skill/po-author-major-mode.mcp';\n\ntype Factory<T, C> = (context: C) => T;\nconst at = <T, C>(value: T | Factory<T, C>, context: C): T =>\n typeof value === 'function' ? (value as Factory<T, C>)(context) : value;\n\nexport const mcp = defineMcpPlugin({\n name: '@agimon-ai/po-major-mode',\n session: (context) => ({\n get skills(): PoMcpSessionPlugin['skills'] { return [at(skillPoAuthorMajorMode, context)]; },\n }) satisfies PoMcpSessionPlugin,\n});\n\nexport default mcp;\n"],"mappings":";;;;;;;AAGA,IAAA,oCAAA,GAAeA,4BAAAA,eAAAA,CAAe;CAC5B,MAAM;CACN,aACE;CACF,aAAA,GAAYC,+BAAAA,oBAAAA,CAAAA,QAAAA,KAAAA,CAAAA,CAAAA,cAAAA,UAAAA,CAAAA,CAAAA,MAAqC,2CAA2C;AAC9F,CAAC;;;ACFD,MAAM,MAAY,OAA0B,YAC1C,OAAO,UAAU,aAAc,MAAwB,OAAO,IAAI;AAEpE,MAAa,OAAA,GAAMC,4BAAAA,gBAAAA,CAAgB;CACjC,MAAM;CACN,UAAU,aAAa,EACrB,IAAI,SAAuC;EAAE,OAAO,CAAC,GAAGC,kCAAwB,OAAO,CAAC;CAAG,EAC7F;AACF,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
//#region generated/mcp.d.ts
|
|
2
|
-
export declare const mcp: import("@agimon-ai/po-core/mcpFacet").
|
|
2
|
+
export declare const mcp: import("@agimon-ai/po-core/mcpFacet").PoMcpPluginDefinition;
|
|
3
3
|
//#endregion
|
|
4
4
|
export { mcp as default };
|
|
5
5
|
//# sourceMappingURL=mcp.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.mjs","names":["skillPoAuthorMajorMode"],"sources":["../../src/extensions/workspaces/sessions/(backend)/skill/po-author-major-mode.mcp.ts","../../generated/mcp.ts"],"sourcesContent":["import { defineMcpSkill } from '@agimon-ai/po-core/mcpFacet';\nimport { readPackageResource } from '@agimon-ai/po-core/serverFacet';\n\nexport default defineMcpSkill({\n name: 'po-author-major-mode',\n description:\n \"Configure Po default packages, layers, extensions, hook groups, and named major modes. Use when creating or editing ~/.po/modes.yaml or a repository's .po/modes.yaml, choosing a default mode, or diagnosing which behavior a mode activates.\",\n read: () => readPackageResource(import.meta.url, 'src/prompts/po-author-major-mode/SKILL.md'),\n});\n","// Generated by @agimon-ai/po-build. Do not edit by hand.\nimport { defineMcpPlugin, type
|
|
1
|
+
{"version":3,"file":"mcp.mjs","names":["skillPoAuthorMajorMode"],"sources":["../../src/extensions/workspaces/sessions/(backend)/skill/po-author-major-mode.mcp.ts","../../generated/mcp.ts"],"sourcesContent":["import { defineMcpSkill } from '@agimon-ai/po-core/mcpFacet';\nimport { readPackageResource } from '@agimon-ai/po-core/serverFacet';\n\nexport default defineMcpSkill({\n name: 'po-author-major-mode',\n description:\n \"Configure Po default packages, layers, extensions, hook groups, and named major modes. Use when creating or editing ~/.po/modes.yaml or a repository's .po/modes.yaml, choosing a default mode, or diagnosing which behavior a mode activates.\",\n read: () => readPackageResource(import.meta.url, 'src/prompts/po-author-major-mode/SKILL.md'),\n});\n","// Generated by @agimon-ai/po-build. Do not edit by hand.\nimport { defineMcpPlugin, type PoMcpSessionPlugin } from '@agimon-ai/po-core/mcpFacet';\n\nimport skillPoAuthorMajorMode from '../src/extensions/workspaces/sessions/(backend)/skill/po-author-major-mode.mcp';\n\ntype Factory<T, C> = (context: C) => T;\nconst at = <T, C>(value: T | Factory<T, C>, context: C): T =>\n typeof value === 'function' ? (value as Factory<T, C>)(context) : value;\n\nexport const mcp = defineMcpPlugin({\n name: '@agimon-ai/po-major-mode',\n session: (context) => ({\n get skills(): PoMcpSessionPlugin['skills'] { return [at(skillPoAuthorMajorMode, context)]; },\n }) satisfies PoMcpSessionPlugin,\n});\n\nexport default mcp;\n"],"mappings":";;;AAGA,IAAA,mCAAe,eAAe;CAC5B,MAAM;CACN,aACE;CACF,YAAY,oBAAoB,YAAY,KAAK,2CAA2C;AAC9F,CAAC;;;ACFD,MAAM,MAAY,OAA0B,YAC1C,OAAO,UAAU,aAAc,MAAwB,OAAO,IAAI;AAEpE,MAAa,MAAM,gBAAgB;CACjC,MAAM;CACN,UAAU,aAAa,EACrB,IAAI,SAAuC;EAAE,OAAO,CAAC,GAAGA,kCAAwB,OAAO,CAAC;CAAG,EAC7F;AACF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.cjs","names":["MAJOR_MODE_COMMAND","loadMajorModesConfig","majorModeOptionLabel","defineRoutedContribution","defineResource","packageResourcePath","readPackageResource","defineServerPlugin","commandMajorMode","resourcePoAuthorMajorMode"],"sources":["../../src/extensions/workspaces/sessions/(backend)/_lib/majorModeServerCommand.ts","../../src/extensions/workspaces/sessions/(backend)/command/majorMode.server.ts","../../src/extensions/workspaces/sessions/(backend)/resource/poAuthorMajorMode.server.ts","../../generated/server.ts"],"sourcesContent":["import { loadMajorModesConfig, resolveLayers } from '@agimon-ai/po-config/majorModes';\nimport { type
|
|
1
|
+
{"version":3,"file":"server.cjs","names":["MAJOR_MODE_COMMAND","loadMajorModesConfig","majorModeOptionLabel","defineRoutedContribution","defineResource","packageResourcePath","readPackageResource","defineServerPlugin","commandMajorMode","resourcePoAuthorMajorMode"],"sources":["../../src/extensions/workspaces/sessions/(backend)/_lib/majorModeServerCommand.ts","../../src/extensions/workspaces/sessions/(backend)/command/majorMode.server.ts","../../src/extensions/workspaces/sessions/(backend)/resource/poAuthorMajorMode.server.ts","../../generated/server.ts"],"sourcesContent":["import { loadMajorModesConfig, resolveLayers } from '@agimon-ai/po-config/majorModes';\nimport { type PoHeadlessCommand, type PoHeadlessHostService } from '@agimon-ai/po-core/headless';\n\nimport { MAJOR_MODE_COMMAND, majorModeOptionLabel } from '../../../../../services/majorModeText';\n\nexport function createMajorModeServerCommand(host: PoHeadlessHostService): PoHeadlessCommand {\n return {\n name: MAJOR_MODE_COMMAND,\n description: 'Show or change the active Po major mode.',\n async execute(args, execution) {\n const config = loadMajorModesConfig(execution.repoRoot);\n let requested = args.trim();\n if (!requested) {\n const selected = await execution.client.request({\n kind: 'select',\n title: `Major mode (current: ${execution.selection.majorMode})`,\n options: Object.keys(config.majorMode).map((name) => ({\n label: majorModeOptionLabel(name, config.majorMode[name]?.layers ?? [], execution.selection.majorMode),\n value: name,\n })),\n });\n if (typeof selected !== 'string' || !selected) return;\n requested = selected;\n }\n // Reject invalid command input before requesting a capability transition.\n resolveLayers(config, requested);\n if (requested === execution.selection.majorMode) return;\n await host.changeSelection({ axis: 'majorMode', majorMode: requested });\n },\n };\n}\n","import { defineRoutedContribution } from '@agimon-ai/po-core/extensionFile';\nimport type { PoServerPluginContext } from '@agimon-ai/po-core/serverFacet';\n\nimport { createMajorModeServerCommand } from '../_lib/majorModeServerCommand';\nexport default defineRoutedContribution(\n ({ agent }: PoServerPluginContext) => (agent ? createMajorModeServerCommand(agent) : undefined),\n { cardinality: 'optional' },\n);\n","import { defineResource } from '@agimon-ai/po-core/extensionFile';\nimport { packageResourcePath, readPackageResource } from '@agimon-ai/po-core/serverFacet';\n\nexport default defineResource({\n name: 'po-author-major-mode',\n description:\n \"Configure Po default packages, layers, extensions, hook groups, and named major modes. Use when creating or editing ~/.po/modes.yaml or a repository's .po/modes.yaml, choosing a default mode, or diagnosing which behavior a mode activates.\",\n when: { state: { 'minor-mode': 'help' }, attribution: { kind: 'minor' as const, mode: 'help' } },\n kind: 'skill' as const,\n path: packageResourcePath(import.meta.url, 'src/prompts/po-author-major-mode/SKILL.md'),\n read: () => readPackageResource(import.meta.url, 'src/prompts/po-author-major-mode/SKILL.md'),\n});\n","// Generated by @agimon-ai/po-build. Do not edit by hand.\nimport { defineServerPlugin, type PoServerSessionPlugin } from '@agimon-ai/po-core/serverFacet';\n\nimport commandMajorMode from '../src/extensions/workspaces/sessions/(backend)/command/majorMode.server';\nimport resourcePoAuthorMajorMode from '../src/extensions/workspaces/sessions/(backend)/resource/poAuthorMajorMode.server';\n\ntype Factory<T, C> = (context: C) => T;\nconst at = <T, C>(value: T | Factory<T, C>, context: C): T =>\n typeof value === 'function' ? (value as Factory<T, C>)(context) : value;\n/* v8 ignore next -- generated normalization branch */\nconst defined = <T>(values: readonly (T | undefined)[]): T[] =>\n values.filter((value): value is T => value !== undefined);\nconst via = <T>(identity: Record<string, unknown>, value: unknown): T =>\n (value === undefined ? undefined : { ...identity, ...(value as object) }) as T;\n\nexport const facet = defineServerPlugin({\n name: '@agimon-ai/po-major-mode',\n session: (context) => ({\n get commands(): PoServerSessionPlugin['commands'] { return defined([via({ name: 'major-mode' }, at(commandMajorMode, context))]); },\n get resources(): PoServerSessionPlugin['resources'] { return [at(resourcePoAuthorMajorMode, context)]; },\n }),\n});\n\nexport default facet;\n"],"mappings":";;;;;;;;;AAKA,SAAgB,6BAA6B,MAAgD;CAC3F,OAAO;EACL,MAAMA,sBAAAA;EACN,aAAa;EACb,MAAM,QAAQ,MAAM,WAAW;GAC7B,MAAM,UAAA,GAASC,gCAAAA,qBAAAA,CAAqB,UAAU,QAAQ;GACtD,IAAI,YAAY,KAAK,KAAK;GAC1B,IAAI,CAAC,WAAW;IACd,MAAM,WAAW,MAAM,UAAU,OAAO,QAAQ;KAC9C,MAAM;KACN,OAAO,wBAAwB,UAAU,UAAU,UAAU;KAC7D,SAAS,OAAO,KAAK,OAAO,SAAS,CAAC,CAAC,KAAK,UAAU;MACpD,OAAOC,sBAAAA,qBAAqB,MAAM,OAAO,UAAU,KAAK,EAAE,UAAU,CAAC,GAAG,UAAU,UAAU,SAAS;MACrG,OAAO;KACT,EAAE;IACJ,CAAC;IACD,IAAI,OAAO,aAAa,YAAY,CAAC,UAAU;IAC/C,YAAY;GACd;GAEA,CAAA,GAAA,gCAAA,cAAA,CAAc,QAAQ,SAAS;GAC/B,IAAI,cAAc,UAAU,UAAU,WAAW;GACjD,MAAM,KAAK,gBAAgB;IAAE,MAAM;IAAa,WAAW;GAAU,CAAC;EACxE;CACF;AACF;;;AC1BA,IAAA,4BAAA,GAAeC,iCAAAA,yBAAAA,EACZ,EAAE,YAAoC,QAAQ,6BAA6B,KAAK,IAAI,KAAA,GACrF,EAAE,aAAa,WAAW,CAC5B;;;ACJA,IAAA,oCAAA,GAAeC,iCAAAA,eAAAA,CAAe;CAC5B,MAAM;CACN,aACE;CACF,MAAM;EAAE,OAAO,EAAE,cAAc,OAAO;EAAG,aAAa;GAAE,MAAM;GAAkB,MAAM;EAAO;CAAE;CAC/F,MAAM;CACN,OAAA,GAAMC,+BAAAA,oBAAAA,CAAAA,QAAAA,KAAAA,CAAAA,CAAAA,cAAAA,UAAAA,CAAAA,CAAAA,MAAqC,2CAA2C;CACtF,aAAA,GAAYC,+BAAAA,oBAAAA,CAAAA,QAAAA,KAAAA,CAAAA,CAAAA,cAAAA,UAAAA,CAAAA,CAAAA,MAAqC,2CAA2C;AAC9F,CAAC;;;ACJD,MAAM,MAAY,OAA0B,YAC1C,OAAO,UAAU,aAAc,MAAwB,OAAO,IAAI;;AAEpE,MAAM,WAAc,WAClB,OAAO,QAAQ,UAAsB,UAAU,KAAA,CAAS;AAC1D,MAAM,OAAU,UAAmC,UAChD,UAAU,KAAA,IAAY,KAAA,IAAY;CAAE,GAAG;CAAU,GAAI;AAAiB;AAEzE,MAAa,SAAA,GAAQC,+BAAAA,mBAAAA,CAAmB;CACtC,MAAM;CACN,UAAU,aAAa;EACrB,IAAI,WAA8C;GAAE,OAAO,QAAQ,CAAC,IAAI,EAAE,MAAM,aAAa,GAAG,GAAGC,0BAAkB,OAAO,CAAC,CAAC,CAAC;EAAG;EAClI,IAAI,YAAgD;GAAE,OAAO,CAAC,GAAGC,kCAA2B,OAAO,CAAC;EAAG;CACzG;AACF,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
//#region generated/server.d.ts
|
|
2
|
-
export declare const facet: import("@agimon-ai/po-core/serverFacet").
|
|
2
|
+
export declare const facet: import("@agimon-ai/po-core/serverFacet").PoServerFacet;
|
|
3
3
|
//#endregion
|
|
4
4
|
export { facet as default };
|
|
5
5
|
//# sourceMappingURL=server.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.mjs","names":["commandMajorMode","resourcePoAuthorMajorMode"],"sources":["../../src/extensions/workspaces/sessions/(backend)/_lib/majorModeServerCommand.ts","../../src/extensions/workspaces/sessions/(backend)/command/majorMode.server.ts","../../src/extensions/workspaces/sessions/(backend)/resource/poAuthorMajorMode.server.ts","../../generated/server.ts"],"sourcesContent":["import { loadMajorModesConfig, resolveLayers } from '@agimon-ai/po-config/majorModes';\nimport { type
|
|
1
|
+
{"version":3,"file":"server.mjs","names":["commandMajorMode","resourcePoAuthorMajorMode"],"sources":["../../src/extensions/workspaces/sessions/(backend)/_lib/majorModeServerCommand.ts","../../src/extensions/workspaces/sessions/(backend)/command/majorMode.server.ts","../../src/extensions/workspaces/sessions/(backend)/resource/poAuthorMajorMode.server.ts","../../generated/server.ts"],"sourcesContent":["import { loadMajorModesConfig, resolveLayers } from '@agimon-ai/po-config/majorModes';\nimport { type PoHeadlessCommand, type PoHeadlessHostService } from '@agimon-ai/po-core/headless';\n\nimport { MAJOR_MODE_COMMAND, majorModeOptionLabel } from '../../../../../services/majorModeText';\n\nexport function createMajorModeServerCommand(host: PoHeadlessHostService): PoHeadlessCommand {\n return {\n name: MAJOR_MODE_COMMAND,\n description: 'Show or change the active Po major mode.',\n async execute(args, execution) {\n const config = loadMajorModesConfig(execution.repoRoot);\n let requested = args.trim();\n if (!requested) {\n const selected = await execution.client.request({\n kind: 'select',\n title: `Major mode (current: ${execution.selection.majorMode})`,\n options: Object.keys(config.majorMode).map((name) => ({\n label: majorModeOptionLabel(name, config.majorMode[name]?.layers ?? [], execution.selection.majorMode),\n value: name,\n })),\n });\n if (typeof selected !== 'string' || !selected) return;\n requested = selected;\n }\n // Reject invalid command input before requesting a capability transition.\n resolveLayers(config, requested);\n if (requested === execution.selection.majorMode) return;\n await host.changeSelection({ axis: 'majorMode', majorMode: requested });\n },\n };\n}\n","import { defineRoutedContribution } from '@agimon-ai/po-core/extensionFile';\nimport type { PoServerPluginContext } from '@agimon-ai/po-core/serverFacet';\n\nimport { createMajorModeServerCommand } from '../_lib/majorModeServerCommand';\nexport default defineRoutedContribution(\n ({ agent }: PoServerPluginContext) => (agent ? createMajorModeServerCommand(agent) : undefined),\n { cardinality: 'optional' },\n);\n","import { defineResource } from '@agimon-ai/po-core/extensionFile';\nimport { packageResourcePath, readPackageResource } from '@agimon-ai/po-core/serverFacet';\n\nexport default defineResource({\n name: 'po-author-major-mode',\n description:\n \"Configure Po default packages, layers, extensions, hook groups, and named major modes. Use when creating or editing ~/.po/modes.yaml or a repository's .po/modes.yaml, choosing a default mode, or diagnosing which behavior a mode activates.\",\n when: { state: { 'minor-mode': 'help' }, attribution: { kind: 'minor' as const, mode: 'help' } },\n kind: 'skill' as const,\n path: packageResourcePath(import.meta.url, 'src/prompts/po-author-major-mode/SKILL.md'),\n read: () => readPackageResource(import.meta.url, 'src/prompts/po-author-major-mode/SKILL.md'),\n});\n","// Generated by @agimon-ai/po-build. Do not edit by hand.\nimport { defineServerPlugin, type PoServerSessionPlugin } from '@agimon-ai/po-core/serverFacet';\n\nimport commandMajorMode from '../src/extensions/workspaces/sessions/(backend)/command/majorMode.server';\nimport resourcePoAuthorMajorMode from '../src/extensions/workspaces/sessions/(backend)/resource/poAuthorMajorMode.server';\n\ntype Factory<T, C> = (context: C) => T;\nconst at = <T, C>(value: T | Factory<T, C>, context: C): T =>\n typeof value === 'function' ? (value as Factory<T, C>)(context) : value;\n/* v8 ignore next -- generated normalization branch */\nconst defined = <T>(values: readonly (T | undefined)[]): T[] =>\n values.filter((value): value is T => value !== undefined);\nconst via = <T>(identity: Record<string, unknown>, value: unknown): T =>\n (value === undefined ? undefined : { ...identity, ...(value as object) }) as T;\n\nexport const facet = defineServerPlugin({\n name: '@agimon-ai/po-major-mode',\n session: (context) => ({\n get commands(): PoServerSessionPlugin['commands'] { return defined([via({ name: 'major-mode' }, at(commandMajorMode, context))]); },\n get resources(): PoServerSessionPlugin['resources'] { return [at(resourcePoAuthorMajorMode, context)]; },\n }),\n});\n\nexport default facet;\n"],"mappings":";;;;;AAKA,SAAgB,6BAA6B,MAAgD;CAC3F,OAAO;EACL,MAAM;EACN,aAAa;EACb,MAAM,QAAQ,MAAM,WAAW;GAC7B,MAAM,SAAS,qBAAqB,UAAU,QAAQ;GACtD,IAAI,YAAY,KAAK,KAAK;GAC1B,IAAI,CAAC,WAAW;IACd,MAAM,WAAW,MAAM,UAAU,OAAO,QAAQ;KAC9C,MAAM;KACN,OAAO,wBAAwB,UAAU,UAAU,UAAU;KAC7D,SAAS,OAAO,KAAK,OAAO,SAAS,CAAC,CAAC,KAAK,UAAU;MACpD,OAAO,qBAAqB,MAAM,OAAO,UAAU,KAAK,EAAE,UAAU,CAAC,GAAG,UAAU,UAAU,SAAS;MACrG,OAAO;KACT,EAAE;IACJ,CAAC;IACD,IAAI,OAAO,aAAa,YAAY,CAAC,UAAU;IAC/C,YAAY;GACd;GAEA,cAAc,QAAQ,SAAS;GAC/B,IAAI,cAAc,UAAU,UAAU,WAAW;GACjD,MAAM,KAAK,gBAAgB;IAAE,MAAM;IAAa,WAAW;GAAU,CAAC;EACxE;CACF;AACF;;;AC1BA,IAAA,2BAAe,0BACZ,EAAE,YAAoC,QAAQ,6BAA6B,KAAK,IAAI,KAAA,GACrF,EAAE,aAAa,WAAW,CAC5B;;;ACJA,IAAA,mCAAe,eAAe;CAC5B,MAAM;CACN,aACE;CACF,MAAM;EAAE,OAAO,EAAE,cAAc,OAAO;EAAG,aAAa;GAAE,MAAM;GAAkB,MAAM;EAAO;CAAE;CAC/F,MAAM;CACN,MAAM,oBAAoB,YAAY,KAAK,2CAA2C;CACtF,YAAY,oBAAoB,YAAY,KAAK,2CAA2C;AAC9F,CAAC;;;ACJD,MAAM,MAAY,OAA0B,YAC1C,OAAO,UAAU,aAAc,MAAwB,OAAO,IAAI;;AAEpE,MAAM,WAAc,WAClB,OAAO,QAAQ,UAAsB,UAAU,KAAA,CAAS;AAC1D,MAAM,OAAU,UAAmC,UAChD,UAAU,KAAA,IAAY,KAAA,IAAY;CAAE,GAAG;CAAU,GAAI;AAAiB;AAEzE,MAAa,QAAQ,mBAAmB;CACtC,MAAM;CACN,UAAU,aAAa;EACrB,IAAI,WAA8C;GAAE,OAAO,QAAQ,CAAC,IAAI,EAAE,MAAM,aAAa,GAAG,GAAGA,0BAAkB,OAAO,CAAC,CAAC,CAAC;EAAG;EAClI,IAAI,YAAgD;GAAE,OAAO,CAAC,GAAGC,kCAA2B,OAAO,CAAC;EAAG;CACzG;AACF,CAAC"}
|
package/dist/index.cjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
2
|
const require_majorModeText = require("./majorModeText-DCFGufYS.cjs");
|
|
3
3
|
//#region src/services/statusLine/index.ts
|
|
4
|
-
const STATUS_KEY = "
|
|
4
|
+
const STATUS_KEY = "po-major-mode";
|
|
5
5
|
/** Compact footer text for the selected major mode, domains, and profile. */
|
|
6
6
|
function statusText(majorMode, domains, profile) {
|
|
7
7
|
return [
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","names":[],"sources":["../src/services/statusLine/index.ts","../src/types/majorMode.ts"],"sourcesContent":["export const STATUS_KEY = '
|
|
1
|
+
{"version":3,"file":"index.cjs","names":[],"sources":["../src/services/statusLine/index.ts","../src/types/majorMode.ts"],"sourcesContent":["export const STATUS_KEY = 'po-major-mode';\n\n/** Compact footer text for the selected major mode, domains, and profile. */\nexport function statusText(majorMode: string, domains: readonly string[], profile?: string): string {\n return [profile ? `*${profile}*` : undefined, `[${majorMode}]`, domains.join(',')]\n .filter((part) => Boolean(part))\n .join(':');\n}\n","import type { MajorModesConfig } from '@agimon-ai/po-config/majorModes';\n\n/** The npm name this package registers its voice tool and contributions under. */\nexport const MAJOR_MODE_SOURCE = '@agimon-ai/po-major-mode';\n\n/** The selection as both the command and the voice tool need to see it. */\nexport interface MajorModeView {\n config: MajorModesConfig;\n majorMode: string;\n domains: readonly string[];\n profile?: string;\n}\n"],"mappings":";;;AAAA,MAAa,aAAa;;AAG1B,SAAgB,WAAW,WAAmB,SAA4B,SAA0B;CAClG,OAAO;EAAC,UAAU,IAAI,QAAQ,KAAK,KAAA;EAAW,IAAI,UAAU;EAAI,QAAQ,KAAK,GAAG;CAAC,CAAC,CAC/E,QAAQ,SAAS,QAAQ,IAAI,CAAC,CAAC,CAC/B,KAAK,GAAG;AACb;;;;ACJA,MAAa,oBAAoB"}
|
package/dist/index.d.mts
CHANGED
|
@@ -23,7 +23,7 @@ export declare function applySummary(picked: string, layers: string[], stale: bo
|
|
|
23
23
|
export declare function majorModeSummary(picked: string, layers: string[], current: string, composed?: boolean): string;
|
|
24
24
|
//#endregion
|
|
25
25
|
//#region src/services/statusLine/index.d.ts
|
|
26
|
-
export declare const STATUS_KEY = "
|
|
26
|
+
export declare const STATUS_KEY = "po-major-mode";
|
|
27
27
|
/** Compact footer text for the selected major mode, domains, and profile. */
|
|
28
28
|
export declare function statusText(majorMode: string, domains: readonly string[], profile?: string): string;
|
|
29
29
|
//#endregion
|
package/dist/index.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { a as majorModeSummary, i as majorModeOptionLabel, n as applySummary, o as optionName, r as majorModeItems, t as MAJOR_MODE_COMMAND } from "./majorModeText-DuWMOhxX.mjs";
|
|
2
2
|
//#region src/services/statusLine/index.ts
|
|
3
|
-
const STATUS_KEY = "
|
|
3
|
+
const STATUS_KEY = "po-major-mode";
|
|
4
4
|
/** Compact footer text for the selected major mode, domains, and profile. */
|
|
5
5
|
function statusText(majorMode, domains, profile) {
|
|
6
6
|
return [
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","names":[],"sources":["../src/services/statusLine/index.ts","../src/types/majorMode.ts"],"sourcesContent":["export const STATUS_KEY = '
|
|
1
|
+
{"version":3,"file":"index.mjs","names":[],"sources":["../src/services/statusLine/index.ts","../src/types/majorMode.ts"],"sourcesContent":["export const STATUS_KEY = 'po-major-mode';\n\n/** Compact footer text for the selected major mode, domains, and profile. */\nexport function statusText(majorMode: string, domains: readonly string[], profile?: string): string {\n return [profile ? `*${profile}*` : undefined, `[${majorMode}]`, domains.join(',')]\n .filter((part) => Boolean(part))\n .join(':');\n}\n","import type { MajorModesConfig } from '@agimon-ai/po-config/majorModes';\n\n/** The npm name this package registers its voice tool and contributions under. */\nexport const MAJOR_MODE_SOURCE = '@agimon-ai/po-major-mode';\n\n/** The selection as both the command and the voice tool need to see it. */\nexport interface MajorModeView {\n config: MajorModesConfig;\n majorMode: string;\n domains: readonly string[];\n profile?: string;\n}\n"],"mappings":";;AAAA,MAAa,aAAa;;AAG1B,SAAgB,WAAW,WAAmB,SAA4B,SAA0B;CAClG,OAAO;EAAC,UAAU,IAAI,QAAQ,KAAK,KAAA;EAAW,IAAI,UAAU;EAAI,QAAQ,KAAK,GAAG;CAAC,CAAC,CAC/E,QAAQ,SAAS,QAAQ,IAAI,CAAC,CAAC,CAC/B,KAAK,GAAG;AACb;;;;ACJA,MAAa,oBAAoB"}
|
package/llms.txt
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agimon-ai/po-major-mode",
|
|
3
|
-
"version": "0.0.0-alpha.
|
|
3
|
+
"version": "0.0.0-alpha.4",
|
|
4
4
|
"description": "Named major-mode selection and layer composition switching for Po sessions.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ai",
|
|
@@ -60,24 +60,24 @@
|
|
|
60
60
|
"access": "public"
|
|
61
61
|
},
|
|
62
62
|
"dependencies": {
|
|
63
|
-
"@agimon-ai/po-config": "0.0.0-alpha.
|
|
64
|
-
"@agimon-ai/po-core": "0.0.0-alpha.
|
|
65
|
-
"@agimon-ai/po-minor-mode": "0.0.0-alpha.
|
|
66
|
-
"@agimon-ai/po-telemetry": "0.0.0-alpha.
|
|
63
|
+
"@agimon-ai/po-config": "0.0.0-alpha.4",
|
|
64
|
+
"@agimon-ai/po-core": "0.0.0-alpha.4",
|
|
65
|
+
"@agimon-ai/po-minor-mode": "0.0.0-alpha.4",
|
|
66
|
+
"@agimon-ai/po-telemetry": "0.0.0-alpha.4",
|
|
67
67
|
"@deepseek-ai/cordis": "4.0.4",
|
|
68
|
-
"typebox": "1.3.
|
|
68
|
+
"typebox": "1.3.37"
|
|
69
69
|
},
|
|
70
70
|
"devDependencies": {
|
|
71
|
-
"@agimon-ai/po-build": "0.0.0-alpha.
|
|
72
|
-
"@agimon-ai/po-voice": "0.0.0-alpha.
|
|
73
|
-
"@agimon-ai/vibe-lint-plugin-
|
|
71
|
+
"@agimon-ai/po-build": "0.0.0-alpha.4",
|
|
72
|
+
"@agimon-ai/po-voice": "0.0.0-alpha.4",
|
|
73
|
+
"@agimon-ai/vibe-lint-plugin-po-extension": "0.0.0-alpha.4",
|
|
74
74
|
"@deepseek-ai/cordis": "4.0.4",
|
|
75
75
|
"@earendil-works/pi-coding-agent": "1.2.0",
|
|
76
|
-
"@types/node": "26.6.
|
|
77
|
-
"@vitest/coverage-v8": "5.0.
|
|
78
|
-
"tsdown": "0.23.
|
|
76
|
+
"@types/node": "26.6.5",
|
|
77
|
+
"@vitest/coverage-v8": "5.0.4",
|
|
78
|
+
"tsdown": "0.23.1",
|
|
79
79
|
"typescript": "7.0.2",
|
|
80
|
-
"vitest": "5.0.
|
|
80
|
+
"vitest": "5.0.4"
|
|
81
81
|
},
|
|
82
82
|
"peerDependencies": {
|
|
83
83
|
"@earendil-works/pi-coding-agent": "1.2.0"
|
|
@@ -148,5 +148,5 @@ po sync --check
|
|
|
148
148
|
```
|
|
149
149
|
|
|
150
150
|
Run `po sync` only when the user intends to install packages or refresh synchronized artifacts.
|
|
151
|
-
For repository changes to the parser or templates themselves, run the affected
|
|
151
|
+
For repository changes to the parser or templates themselves, run the affected Po Config and
|
|
152
152
|
Po lint, typecheck, build, and test targets.
|