@ai-outfitter/outfitter 0.11.0 → 1.0.2

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.
Files changed (308) hide show
  1. package/.outfitter/skills/outfitter/SKILL.md +67 -37
  2. package/README.md +63 -35
  3. package/code/enterprise/cli/privateCatalogSettings.cjs +2 -2
  4. package/code/enterprise/pi-extension/privateCatalogOnboarding.js +5 -8
  5. package/code/enterprise/shared/privateCatalogPolicy.cjs +5 -5
  6. package/code/pi-extension/src/outfitter-extension.js +353 -553
  7. package/code/pi-extension/src/outfitter-runtime-extension.js +160 -0
  8. package/dist/agents/AgentLaunch.d.ts +9 -1
  9. package/dist/agents/AgentLaunch.js +19 -0
  10. package/dist/agents/AgentLaunch.js.map +1 -1
  11. package/dist/agents/PiCredentialPersistence.d.ts +6 -0
  12. package/dist/agents/PiCredentialPersistence.js +33 -0
  13. package/dist/agents/PiCredentialPersistence.js.map +1 -0
  14. package/dist/cli/OutfitterCli.js +10 -18
  15. package/dist/cli/OutfitterCli.js.map +1 -1
  16. package/dist/cli/commands/CommandObject.d.ts +0 -5
  17. package/dist/cli/commands/CommandObject.js +1 -4
  18. package/dist/cli/commands/CommandObject.js.map +1 -1
  19. package/dist/cli/commands/DumpCommand.d.ts +19 -0
  20. package/dist/cli/commands/DumpCommand.js +54 -0
  21. package/dist/cli/commands/DumpCommand.js.map +1 -0
  22. package/dist/cli/commands/ListCommand.d.ts +17 -0
  23. package/dist/cli/commands/ListCommand.js +77 -0
  24. package/dist/cli/commands/ListCommand.js.map +1 -0
  25. package/dist/cli/commands/PiRuntimeLaunch.d.ts +8 -0
  26. package/dist/cli/commands/PiRuntimeLaunch.js +47 -0
  27. package/dist/cli/commands/PiRuntimeLaunch.js.map +1 -0
  28. package/dist/cli/commands/ProcessDefaults.d.ts +2 -0
  29. package/dist/cli/commands/ProcessDefaults.js +5 -0
  30. package/dist/cli/commands/ProcessDefaults.js.map +1 -0
  31. package/dist/cli/commands/RunAgentCommand.d.ts +46 -0
  32. package/dist/cli/commands/RunAgentCommand.js +176 -0
  33. package/dist/cli/commands/RunAgentCommand.js.map +1 -0
  34. package/dist/cli/commands/SetupCommand.d.ts +38 -6
  35. package/dist/cli/commands/SetupCommand.js +194 -232
  36. package/dist/cli/commands/SetupCommand.js.map +1 -1
  37. package/dist/cli/commands/ValidateCommand.d.ts +20 -0
  38. package/dist/cli/commands/ValidateCommand.js +54 -0
  39. package/dist/cli/commands/ValidateCommand.js.map +1 -0
  40. package/dist/composer/Composer.d.ts +11 -0
  41. package/dist/composer/Composer.js +72 -0
  42. package/dist/composer/Composer.js.map +1 -0
  43. package/dist/composer/Composition.d.ts +33 -0
  44. package/dist/composer/Composition.js +2 -0
  45. package/dist/composer/Composition.js.map +1 -0
  46. package/dist/dump/Containment.d.ts +8 -0
  47. package/dist/dump/Containment.js +22 -0
  48. package/dist/dump/Containment.js.map +1 -0
  49. package/dist/dump/Dump.d.ts +8 -0
  50. package/dist/dump/Dump.js +182 -0
  51. package/dist/dump/Dump.js.map +1 -0
  52. package/dist/extensions/PiExtensionCache.d.ts +30 -0
  53. package/dist/extensions/PiExtensionCache.js +92 -0
  54. package/dist/extensions/PiExtensionCache.js.map +1 -0
  55. package/dist/fs/TypeConflict.d.ts +6 -0
  56. package/dist/fs/TypeConflict.js +21 -0
  57. package/dist/fs/TypeConflict.js.map +1 -0
  58. package/dist/paths/OutfitterCache.d.ts +6 -0
  59. package/dist/paths/OutfitterCache.js +17 -0
  60. package/dist/paths/OutfitterCache.js.map +1 -0
  61. package/dist/projection/Materialize.d.ts +24 -0
  62. package/dist/projection/Materialize.js +83 -0
  63. package/dist/projection/Materialize.js.map +1 -0
  64. package/dist/projection/ProjectHarness.d.ts +5 -0
  65. package/dist/projection/ProjectHarness.js +77 -0
  66. package/dist/projection/ProjectHarness.js.map +1 -0
  67. package/dist/projection/Projection.d.ts +23 -0
  68. package/dist/projection/Projection.js +2 -0
  69. package/dist/projection/Projection.js.map +1 -0
  70. package/dist/resolver/AgentDefinition.d.ts +30 -0
  71. package/dist/resolver/AgentDefinition.js +123 -0
  72. package/dist/resolver/AgentDefinition.js.map +1 -0
  73. package/dist/resolver/Layer.d.ts +12 -0
  74. package/dist/resolver/Layer.js +30 -0
  75. package/dist/resolver/Layer.js.map +1 -0
  76. package/dist/resolver/Resolver.d.ts +3 -0
  77. package/dist/resolver/Resolver.js +163 -0
  78. package/dist/resolver/Resolver.js.map +1 -0
  79. package/dist/resolver/ResolverContext.d.ts +15 -0
  80. package/dist/resolver/ResolverContext.js +11 -0
  81. package/dist/resolver/ResolverContext.js.map +1 -0
  82. package/dist/resolver/ResolverValidation.d.ts +11 -0
  83. package/dist/resolver/ResolverValidation.js +112 -0
  84. package/dist/resolver/ResolverValidation.js.map +1 -0
  85. package/dist/resolver/Resource.d.ts +88 -0
  86. package/dist/resolver/Resource.js +34 -0
  87. package/dist/resolver/Resource.js.map +1 -0
  88. package/dist/schemas/agent.schema.json +48 -0
  89. package/dist/schemas/settings.schema.json +32 -9
  90. package/dist/settings/Settings.d.ts +34 -5
  91. package/dist/settings/Settings.js +3 -1
  92. package/dist/settings/Settings.js.map +1 -1
  93. package/dist/settings/SettingsLoader.d.ts +1 -1
  94. package/dist/settings/SettingsLoader.js +23 -22
  95. package/dist/settings/SettingsLoader.js.map +1 -1
  96. package/dist/settings/SettingsMerger.js +12 -10
  97. package/dist/settings/SettingsMerger.js.map +1 -1
  98. package/dist/setup/DefaultCatalog.d.ts +20 -0
  99. package/dist/setup/DefaultCatalog.js +89 -0
  100. package/dist/setup/DefaultCatalog.js.map +1 -0
  101. package/dist/setup/Setup.d.ts +43 -0
  102. package/dist/setup/Setup.js +261 -0
  103. package/dist/setup/Setup.js.map +1 -0
  104. package/dist/skills/SkillDocument.d.ts +6 -1
  105. package/dist/skills/SkillDocument.js.map +1 -1
  106. package/dist/sources/SourceCache.d.ts +19 -0
  107. package/dist/{profiles/ProfileCache.js → sources/SourceCache.js} +22 -18
  108. package/dist/sources/SourceCache.js.map +1 -0
  109. package/dist/validation/SchemaValidator.d.ts +1 -1
  110. package/dist/validation/SchemaValidator.js +4 -13
  111. package/dist/validation/SchemaValidator.js.map +1 -1
  112. package/docs/architecture/state_writeback_strategy.md +54 -122
  113. package/docs/documentation/README.md +33 -12
  114. package/docs/documentation/actions.md +35 -52
  115. package/docs/documentation/agents.md +109 -0
  116. package/docs/documentation/best-practices.md +25 -63
  117. package/docs/documentation/catalogs.md +126 -0
  118. package/docs/documentation/cli.md +39 -41
  119. package/docs/documentation/concepts.md +66 -23
  120. package/docs/documentation/dump-and-bake.md +30 -0
  121. package/docs/documentation/first-time-cli-agent-users.md +8 -8
  122. package/docs/documentation/getting-started.md +28 -8
  123. package/docs/documentation/hooks.md +20 -0
  124. package/docs/documentation/iterating-on-profiles.md +56 -70
  125. package/docs/documentation/local-development.md +84 -0
  126. package/docs/documentation/migration.md +39 -0
  127. package/docs/documentation/personas.md +41 -0
  128. package/docs/documentation/porting-claude.md +54 -0
  129. package/docs/documentation/profiles.md +16 -169
  130. package/docs/documentation/settings.md +61 -0
  131. package/docs/documentation/skills.md +93 -334
  132. package/docs/documentation/state.md +24 -62
  133. package/docs/documentation/subagents.md +37 -0
  134. package/docs/documentation/support-matrix.md +40 -35
  135. package/docs/documentation/switching-to-outfitter.md +75 -81
  136. package/docs/documentation/tasks.md +13 -0
  137. package/docs/documentation/usecases/engineering.md +67 -84
  138. package/docs/documentation/usecases/organization-profile-catalog.md +83 -111
  139. package/docs/documentation/usecases/persona-reviews.md +133 -139
  140. package/docs/philosophy.md +2 -2
  141. package/package.json +3 -3
  142. package/src/schemas/agent.schema.json +48 -0
  143. package/src/schemas/settings.schema.json +32 -9
  144. package/dist/agents/AdapterProfileControls.d.ts +0 -21
  145. package/dist/agents/AdapterProfileControls.js +0 -76
  146. package/dist/agents/AdapterProfileControls.js.map +0 -1
  147. package/dist/agents/AdapterStatePaths.d.ts +0 -12
  148. package/dist/agents/AdapterStatePaths.js +0 -46
  149. package/dist/agents/AdapterStatePaths.js.map +0 -1
  150. package/dist/agents/AgentAdapter.d.ts +0 -44
  151. package/dist/agents/AgentAdapter.js +0 -2
  152. package/dist/agents/AgentAdapter.js.map +0 -1
  153. package/dist/agents/AgentRegistry.d.ts +0 -6
  154. package/dist/agents/AgentRegistry.js +0 -17
  155. package/dist/agents/AgentRegistry.js.map +0 -1
  156. package/dist/agents/LaunchResources.d.ts +0 -17
  157. package/dist/agents/LaunchResources.js +0 -61
  158. package/dist/agents/LaunchResources.js.map +0 -1
  159. package/dist/agents/OutfitterSkill.d.ts +0 -11
  160. package/dist/agents/OutfitterSkill.js +0 -128
  161. package/dist/agents/OutfitterSkill.js.map +0 -1
  162. package/dist/agents/ResourceIdentity.d.ts +0 -2
  163. package/dist/agents/ResourceIdentity.js +0 -51
  164. package/dist/agents/ResourceIdentity.js.map +0 -1
  165. package/dist/agents/claude/ClaudeAdapter.d.ts +0 -2
  166. package/dist/agents/claude/ClaudeAdapter.js +0 -148
  167. package/dist/agents/claude/ClaudeAdapter.js.map +0 -1
  168. package/dist/agents/claude/ClaudeCompositeProfileWriter.d.ts +0 -5
  169. package/dist/agents/claude/ClaudeCompositeProfileWriter.js +0 -7
  170. package/dist/agents/claude/ClaudeCompositeProfileWriter.js.map +0 -1
  171. package/dist/agents/pi/PiAdapter.d.ts +0 -2
  172. package/dist/agents/pi/PiAdapter.js +0 -363
  173. package/dist/agents/pi/PiAdapter.js.map +0 -1
  174. package/dist/agents/pi/PiArgs.d.ts +0 -2
  175. package/dist/agents/pi/PiArgs.js +0 -15
  176. package/dist/agents/pi/PiArgs.js.map +0 -1
  177. package/dist/agents/pi/PiCompositeProfileWriter.d.ts +0 -5
  178. package/dist/agents/pi/PiCompositeProfileWriter.js +0 -7
  179. package/dist/agents/pi/PiCompositeProfileWriter.js.map +0 -1
  180. package/dist/agents/pi/PiExtensionCache.d.ts +0 -12
  181. package/dist/agents/pi/PiExtensionCache.js +0 -195
  182. package/dist/agents/pi/PiExtensionCache.js.map +0 -1
  183. package/dist/agents/pi/PiMcpConfig.d.ts +0 -2
  184. package/dist/agents/pi/PiMcpConfig.js +0 -114
  185. package/dist/agents/pi/PiMcpConfig.js.map +0 -1
  186. package/dist/agents/pi/PiSettingsMergePolicy.d.ts +0 -17
  187. package/dist/agents/pi/PiSettingsMergePolicy.js +0 -59
  188. package/dist/agents/pi/PiSettingsMergePolicy.js.map +0 -1
  189. package/dist/agents/pi/PiSkillSources.d.ts +0 -8
  190. package/dist/agents/pi/PiSkillSources.js +0 -73
  191. package/dist/agents/pi/PiSkillSources.js.map +0 -1
  192. package/dist/cli/commands/FirstRunWelcomeProfile.d.ts +0 -11
  193. package/dist/cli/commands/FirstRunWelcomeProfile.js +0 -110
  194. package/dist/cli/commands/FirstRunWelcomeProfile.js.map +0 -1
  195. package/dist/cli/commands/PiLoginLaunch.d.ts +0 -22
  196. package/dist/cli/commands/PiLoginLaunch.js +0 -170
  197. package/dist/cli/commands/PiLoginLaunch.js.map +0 -1
  198. package/dist/cli/commands/RunCommand.d.ts +0 -36
  199. package/dist/cli/commands/RunCommand.js +0 -345
  200. package/dist/cli/commands/RunCommand.js.map +0 -1
  201. package/dist/cli/commands/SyncCommand.d.ts +0 -46
  202. package/dist/cli/commands/SyncCommand.js +0 -244
  203. package/dist/cli/commands/SyncCommand.js.map +0 -1
  204. package/dist/cli/commands/WelcomeCommand.d.ts +0 -56
  205. package/dist/cli/commands/WelcomeCommand.js +0 -224
  206. package/dist/cli/commands/WelcomeCommand.js.map +0 -1
  207. package/dist/cli/commands/assets/outfitter-ascii.txt +0 -5
  208. package/dist/cli/commands/profile/Command.d.ts +0 -7
  209. package/dist/cli/commands/profile/Command.js +0 -24
  210. package/dist/cli/commands/profile/Command.js.map +0 -1
  211. package/dist/cli/commands/profile/CreateCommand.d.ts +0 -19
  212. package/dist/cli/commands/profile/CreateCommand.js +0 -115
  213. package/dist/cli/commands/profile/CreateCommand.js.map +0 -1
  214. package/dist/cli/commands/profile/LintCommand.d.ts +0 -19
  215. package/dist/cli/commands/profile/LintCommand.js +0 -155
  216. package/dist/cli/commands/profile/LintCommand.js.map +0 -1
  217. package/dist/cli/commands/profile/ListCommand.d.ts +0 -19
  218. package/dist/cli/commands/profile/ListCommand.js +0 -91
  219. package/dist/cli/commands/profile/ListCommand.js.map +0 -1
  220. package/dist/cli/commands/profile/Shared.d.ts +0 -9
  221. package/dist/cli/commands/profile/Shared.js +0 -10
  222. package/dist/cli/commands/profile/Shared.js.map +0 -1
  223. package/dist/cli/commands/run/RunFirstRunOnboarding.d.ts +0 -7
  224. package/dist/cli/commands/run/RunFirstRunOnboarding.js +0 -52
  225. package/dist/cli/commands/run/RunFirstRunOnboarding.js.map +0 -1
  226. package/dist/cli/commands/run/RunLaunchSummary.d.ts +0 -2
  227. package/dist/cli/commands/run/RunLaunchSummary.js +0 -35
  228. package/dist/cli/commands/run/RunLaunchSummary.js.map +0 -1
  229. package/dist/cli/commands/run/RunProfileResolution.d.ts +0 -39
  230. package/dist/cli/commands/run/RunProfileResolution.js +0 -128
  231. package/dist/cli/commands/run/RunProfileResolution.js.map +0 -1
  232. package/dist/cli/commands/run/RunStateWritePrompt.d.ts +0 -2
  233. package/dist/cli/commands/run/RunStateWritePrompt.js +0 -29
  234. package/dist/cli/commands/run/RunStateWritePrompt.js.map +0 -1
  235. package/dist/cli/commands/setup/SetupPrompts.d.ts +0 -14
  236. package/dist/cli/commands/setup/SetupPrompts.js +0 -296
  237. package/dist/cli/commands/setup/SetupPrompts.js.map +0 -1
  238. package/dist/cli/commands/setup/SetupSourceImport.d.ts +0 -5
  239. package/dist/cli/commands/setup/SetupSourceImport.js +0 -177
  240. package/dist/cli/commands/setup/SetupSourceImport.js.map +0 -1
  241. package/dist/cli/commands/setup/SetupSourceLaunch.d.ts +0 -4
  242. package/dist/cli/commands/setup/SetupSourceLaunch.js +0 -65
  243. package/dist/cli/commands/setup/SetupSourceLaunch.js.map +0 -1
  244. package/dist/cli/commands/setup/SetupStarterSource.d.ts +0 -21
  245. package/dist/cli/commands/setup/SetupStarterSource.js +0 -133
  246. package/dist/cli/commands/setup/SetupStarterSource.js.map +0 -1
  247. package/dist/cli/commands/setup/SetupTypes.d.ts +0 -91
  248. package/dist/cli/commands/setup/SetupTypes.js +0 -26
  249. package/dist/cli/commands/setup/SetupTypes.js.map +0 -1
  250. package/dist/compositeProfile/CompositeProfile.d.ts +0 -8
  251. package/dist/compositeProfile/CompositeProfile.js +0 -6
  252. package/dist/compositeProfile/CompositeProfile.js.map +0 -1
  253. package/dist/compositeProfile/CompositeProfileAssembler.d.ts +0 -12
  254. package/dist/compositeProfile/CompositeProfileAssembler.js +0 -32
  255. package/dist/compositeProfile/CompositeProfileAssembler.js.map +0 -1
  256. package/dist/compositeProfile/CompositeProfileCleanup.d.ts +0 -9
  257. package/dist/compositeProfile/CompositeProfileCleanup.js +0 -87
  258. package/dist/compositeProfile/CompositeProfileCleanup.js.map +0 -1
  259. package/dist/compositeProfile/CompositeProfileFile.d.ts +0 -16
  260. package/dist/compositeProfile/CompositeProfileFile.js +0 -16
  261. package/dist/compositeProfile/CompositeProfileFile.js.map +0 -1
  262. package/dist/compositeProfile/CompositeProfileTemplate.d.ts +0 -15
  263. package/dist/compositeProfile/CompositeProfileTemplate.js +0 -65
  264. package/dist/compositeProfile/CompositeProfileTemplate.js.map +0 -1
  265. package/dist/compositeProfile/CompositeProfileWatcher.d.ts +0 -18
  266. package/dist/compositeProfile/CompositeProfileWatcher.js +0 -46
  267. package/dist/compositeProfile/CompositeProfileWatcher.js.map +0 -1
  268. package/dist/compositeProfile/StatePersistence.d.ts +0 -39
  269. package/dist/compositeProfile/StatePersistence.js +0 -249
  270. package/dist/compositeProfile/StatePersistence.js.map +0 -1
  271. package/dist/fs/SafeSymlink.d.ts +0 -13
  272. package/dist/fs/SafeSymlink.js +0 -50
  273. package/dist/fs/SafeSymlink.js.map +0 -1
  274. package/dist/profiles/Profile.d.ts +0 -60
  275. package/dist/profiles/Profile.js +0 -7
  276. package/dist/profiles/Profile.js.map +0 -1
  277. package/dist/profiles/ProfileCache.d.ts +0 -8
  278. package/dist/profiles/ProfileCache.js.map +0 -1
  279. package/dist/profiles/ProfileLoader.d.ts +0 -28
  280. package/dist/profiles/ProfileLoader.js +0 -299
  281. package/dist/profiles/ProfileLoader.js.map +0 -1
  282. package/dist/profiles/ProfileMerger.d.ts +0 -19
  283. package/dist/profiles/ProfileMerger.js +0 -112
  284. package/dist/profiles/ProfileMerger.js.map +0 -1
  285. package/dist/profiles/ProfileSource.d.ts +0 -35
  286. package/dist/profiles/ProfileSource.js +0 -13
  287. package/dist/profiles/ProfileSource.js.map +0 -1
  288. package/dist/profiles/PromptIncludes.d.ts +0 -32
  289. package/dist/profiles/PromptIncludes.js +0 -147
  290. package/dist/profiles/PromptIncludes.js.map +0 -1
  291. package/dist/prompts/SystemPromptExport.d.ts +0 -16
  292. package/dist/prompts/SystemPromptExport.js +0 -81
  293. package/dist/prompts/SystemPromptExport.js.map +0 -1
  294. package/dist/schemas/profile-source.schema.json +0 -29
  295. package/dist/schemas/profile.schema.json +0 -200
  296. package/dist/skills/ProfileSkillResolution.d.ts +0 -21
  297. package/dist/skills/ProfileSkillResolution.js +0 -88
  298. package/dist/skills/ProfileSkillResolution.js.map +0 -1
  299. package/dist/skills/SkillCatalog.d.ts +0 -41
  300. package/dist/skills/SkillCatalog.js +0 -119
  301. package/dist/skills/SkillCatalog.js.map +0 -1
  302. package/dist/skills/SkillResolution.d.ts +0 -34
  303. package/dist/skills/SkillResolution.js +0 -369
  304. package/dist/skills/SkillResolution.js.map +0 -1
  305. package/docs/documentation/profile-repository.md +0 -179
  306. package/src/schemas/SchemaDocument.ts +0 -20
  307. package/src/schemas/profile-source.schema.json +0 -29
  308. package/src/schemas/profile.schema.json +0 -200
@@ -1 +0,0 @@
1
- {"version":3,"file":"PiExtensionCache.js","sourceRoot":"","sources":["../../../src/agents/pi/PiExtensionCache.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import { type CompositeProfileFile } from '../../compositeProfile/CompositeProfileFile.js';
2
- export declare const createPiMcpConfigFile: (rootDirectory: string, profileFolders?: readonly string[]) => CompositeProfileFile | undefined;
@@ -1,114 +0,0 @@
1
- // Merges profile-provided Pi MCP configuration fragments into a composite profile file.
2
- import { existsSync, readFileSync } from 'node:fs';
3
- import { join } from 'node:path';
4
- import { createCompositeProfileFile } from '../../compositeProfile/CompositeProfileFile.js';
5
- import { mergeArrayByPolicy } from '../../merge/ArrayMergePolicy.js';
6
- const piMcpConfigPath = '.mcp.json';
7
- export const createPiMcpConfigFile = (rootDirectory, profileFolders = []) => {
8
- const sourceInputs = findPiMcpConfigSources(profileFolders);
9
- if (sourceInputs.length === 0) {
10
- return undefined;
11
- }
12
- const mergedConfig = sourceInputs
13
- .map(readPiMcpConfigSource)
14
- .reduce((mergedConfig, config) => mergePiMcpConfigObjects(mergedConfig, config), {});
15
- return createCompositeProfileFile({
16
- rootDirectory,
17
- relativePath: piMcpConfigPath,
18
- content: `${JSON.stringify(mergedConfig, null, 2)}\n`,
19
- sourceInputs,
20
- strategy: 'merge',
21
- });
22
- };
23
- const findPiMcpConfigSources = (profileFolders) => profileFolders
24
- .map((profileFolder) => join(profileFolder, 'cli_specific', 'pi', piMcpConfigPath))
25
- .filter((candidate) => existsSync(candidate));
26
- const readPiMcpConfigSource = (sourcePath) => {
27
- const parsed = parsePiMcpConfigJson(sourcePath);
28
- if (!isJsonObject(parsed)) {
29
- throw new Error(`Pi MCP config '${sourcePath}' must contain a JSON object.`);
30
- }
31
- return parsed;
32
- };
33
- const parsePiMcpConfigJson = (sourcePath) => {
34
- const content = readPiMcpConfigContent(sourcePath);
35
- try {
36
- return JSON.parse(content);
37
- }
38
- catch (error) {
39
- throw new Error(`Pi MCP config '${sourcePath}' must contain valid JSON.`, { cause: error });
40
- }
41
- };
42
- const readPiMcpConfigContent = (sourcePath) => {
43
- try {
44
- return readFileSync(sourcePath, 'utf8');
45
- }
46
- catch (error) {
47
- throw new Error(`Could not read Pi MCP config '${sourcePath}': ${String(error)}`, { cause: error });
48
- }
49
- };
50
- const mergePiMcpConfigObjects = (lowerPrecedence, higherPrecedence, path = []) => ({
51
- ...lowerPrecedence,
52
- ...Object.fromEntries(Object.entries(higherPrecedence)
53
- .filter((entry) => entry[1] !== undefined)
54
- .map(([key, value]) => [
55
- key,
56
- key in lowerPrecedence
57
- ? mergePiMcpConfigValue(lowerPrecedence[key], value, [...path, key])
58
- : clonePiMcpConfigValue(value),
59
- ])),
60
- });
61
- const mergePiMcpConfigValue = (lowerPrecedence, higherPrecedence, path) => {
62
- if (Array.isArray(higherPrecedence)) {
63
- return mergeArrayByPolicy(isMergeableArray(lowerPrecedence) ? lowerPrecedence : undefined, higherPrecedence, {
64
- mode: 'uniqueBy',
65
- order: 'append',
66
- winner: 'last',
67
- key: piMcpArrayItemIdentity,
68
- });
69
- }
70
- if (isJsonObject(lowerPrecedence) && isJsonObject(higherPrecedence) && !isMcpServerDefinitionPath(path)) {
71
- return mergePiMcpConfigObjects(lowerPrecedence, higherPrecedence, path);
72
- }
73
- return clonePiMcpConfigValue(higherPrecedence);
74
- };
75
- const isMcpServerDefinitionPath = (path) => path.length === 2 && path[0] === 'mcpServers';
76
- const piMcpArrayItemIdentity = (item) => {
77
- if (isJsonObject(item)) {
78
- const explicitIdentity = item.identity ?? item.name ?? item.id;
79
- return explicitIdentity === undefined
80
- ? `anonymous:${stableJsonStringify(item)}`
81
- : `explicit:${stringifyExplicitIdentity(explicitIdentity)}`;
82
- }
83
- return `anonymous:${stableJsonStringify(item)}`;
84
- };
85
- const stringifyExplicitIdentity = (value) => {
86
- if (typeof value === 'string') {
87
- return value;
88
- }
89
- return stableJsonStringify(value);
90
- };
91
- const stableJsonStringify = (value) => JSON.stringify(sortJsonObjectKeys(value));
92
- const sortJsonObjectKeys = (value) => {
93
- if (isMergeableArray(value)) {
94
- return value.map(sortJsonObjectKeys);
95
- }
96
- if (isJsonObject(value)) {
97
- return Object.fromEntries(Object.keys(value)
98
- .sort()
99
- .map((key) => [key, sortJsonObjectKeys(value[key])]));
100
- }
101
- return value;
102
- };
103
- const clonePiMcpConfigValue = (value) => {
104
- if (isMergeableArray(value)) {
105
- return value.map(clonePiMcpConfigValue);
106
- }
107
- if (isJsonObject(value)) {
108
- return mergePiMcpConfigObjects({}, value);
109
- }
110
- return value;
111
- };
112
- const isJsonObject = (value) => value !== null && typeof value === 'object' && !Array.isArray(value);
113
- const isMergeableArray = (value) => Array.isArray(value);
114
- //# sourceMappingURL=PiMcpConfig.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PiMcpConfig.js","sourceRoot":"","sources":["../../../src/agents/pi/PiMcpConfig.ts"],"names":[],"mappings":"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"}
@@ -1,17 +0,0 @@
1
- import type { ArrayMergePolicy } from '../../merge/ArrayMergePolicy.js';
2
- export type PiSettingsArrayName = 'packages' | 'extensions' | 'skills' | 'prompts' | 'themes';
3
- export declare const piSettingsArrayPolicies: {
4
- readonly packages: {
5
- readonly mode: "uniqueBy";
6
- readonly order: "append";
7
- readonly winner: "last";
8
- readonly key: (entry: unknown) => string;
9
- };
10
- readonly extensions: ArrayMergePolicy<unknown>;
11
- readonly skills: ArrayMergePolicy<unknown>;
12
- readonly prompts: ArrayMergePolicy<unknown>;
13
- readonly themes: ArrayMergePolicy<unknown>;
14
- };
15
- export declare const filterPiSettingsPackagesDuplicatingExtensions: (packages: readonly unknown[], extensionSources: readonly string[]) => readonly unknown[];
16
- export declare const normalizePiSettingsPackageResourceIdentity: (entry: unknown) => string | undefined;
17
- export declare const readPiSettingsPackageSource: (entry: unknown) => string | undefined;
@@ -1,59 +0,0 @@
1
- import { normalizeExtensionResourceIdentity, normalizeLaunchResourceIdentity } from '../ResourceIdentity.js';
2
- export const piSettingsArrayPolicies = {
3
- packages: {
4
- mode: 'uniqueBy',
5
- order: 'append',
6
- winner: 'last',
7
- key: (entry) => normalizePiSettingsPackageResourceIdentity(entry) ?? createUnknownPiSettingsArrayKey(entry),
8
- },
9
- extensions: createStringResourceArrayPolicy(normalizeExtensionResourceIdentity),
10
- skills: createStringResourceArrayPolicy(normalizeLaunchResourceIdentity),
11
- prompts: createStringResourceArrayPolicy(normalizeLaunchResourceIdentity),
12
- themes: createStringResourceArrayPolicy(normalizeLaunchResourceIdentity),
13
- };
14
- export const filterPiSettingsPackagesDuplicatingExtensions = (packages, extensionSources) => {
15
- const extensionIdentities = new Set(extensionSources.map(normalizeExtensionResourceIdentity));
16
- if (extensionIdentities.size === 0) {
17
- return packages;
18
- }
19
- return packages.filter((entry) => {
20
- const identity = normalizePiSettingsPackageResourceIdentity(entry);
21
- return identity === undefined || !extensionIdentities.has(identity);
22
- });
23
- };
24
- export const normalizePiSettingsPackageResourceIdentity = (entry) => {
25
- const source = readPiSettingsPackageSource(entry);
26
- return source === undefined ? undefined : normalizeExtensionResourceIdentity(source);
27
- };
28
- export const readPiSettingsPackageSource = (entry) => {
29
- if (typeof entry === 'string') {
30
- return entry;
31
- }
32
- if (entry === null || typeof entry !== 'object' || Array.isArray(entry)) {
33
- return undefined;
34
- }
35
- const record = entry;
36
- return typeof record.source === 'string' ? record.source : undefined;
37
- };
38
- function createStringResourceArrayPolicy(normalize) {
39
- return {
40
- mode: 'uniqueBy',
41
- order: 'append',
42
- winner: 'last',
43
- key: (entry) => (typeof entry === 'string' ? normalize(entry) : createUnknownPiSettingsArrayKey(entry)),
44
- };
45
- }
46
- const createUnknownPiSettingsArrayKey = (entry) => `literal:${stableStringify(entry)}`;
47
- const stableStringify = (value) => {
48
- if (value === null || typeof value !== 'object') {
49
- return JSON.stringify(value);
50
- }
51
- if (Array.isArray(value)) {
52
- return `[${value.map(stableStringify).join(',')}]`;
53
- }
54
- return `{${Object.entries(value)
55
- .sort(([left], [right]) => left.localeCompare(right))
56
- .map(([key, item]) => `${JSON.stringify(key)}:${stableStringify(item)}`)
57
- .join(',')}}`;
58
- };
59
- //# sourceMappingURL=PiSettingsMergePolicy.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PiSettingsMergePolicy.js","sourceRoot":"","sources":["../../../src/agents/pi/PiSettingsMergePolicy.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- import type { AgentLaunchProfileLayer } from '../AgentAdapter.js';
2
- import type { PiProfileControls } from '../../profiles/Profile.js';
3
- export declare const createPiSkillSources: (input: {
4
- readonly builtInOutfitterSkill: string;
5
- readonly controls: PiProfileControls;
6
- readonly profileFolders: readonly string[];
7
- readonly profileLayers: readonly AgentLaunchProfileLayer[];
8
- }) => readonly string[];
@@ -1,73 +0,0 @@
1
- // Resolves Pi skill sources declared by profiles and discovered in profile folders.
2
- import { readdirSync, statSync } from 'node:fs';
3
- import { dirname, isAbsolute, join } from 'node:path';
4
- export const createPiSkillSources = (input) => [
5
- ...new Set([
6
- input.builtInOutfitterSkill,
7
- // Catalog-ID entries are resolved to generated skill paths before the adapter runs;
8
- // any remaining object entries carry no path source and are skipped here.
9
- ...(input.controls.skills ?? [])
10
- .filter((source) => typeof source === 'string')
11
- .map((source) => resolveProfileSkillSource(source, input.profileLayers)),
12
- ...input.profileFolders.flatMap(skillSourcesForProfile),
13
- ]),
14
- ];
15
- const resolveProfileSkillSource = (source, profileLayers) => {
16
- if (isAbsolute(source)) {
17
- return source;
18
- }
19
- for (const root of sharedSkillRootsForLayers(profileLayers)) {
20
- const resolvedSource = join(root, source);
21
- if (isPiSkillSource(resolvedSource)) {
22
- return resolvedSource;
23
- }
24
- }
25
- return source;
26
- };
27
- const sharedSkillRootsForLayers = (profileLayers) => [
28
- ...new Set(profileLayers.flatMap(sharedSkillRootsForLayer)),
29
- ];
30
- const sharedSkillRootsForLayer = (profileLayer) => {
31
- const roots = [];
32
- if (profileLayer.sourceRootPath !== undefined) {
33
- roots.push(dirname(profileLayer.sourceRootPath), profileLayer.sourceRootPath);
34
- }
35
- if (profileLayer.resourceRootPath !== undefined) {
36
- roots.push(profileLayer.resourceRootPath);
37
- }
38
- return roots;
39
- };
40
- const isPiSkillSource = (sourcePath) => isFile(sourcePath) || isFile(join(sourcePath, 'SKILL.md'));
41
- const skillSourcesForProfile = (profileFolder) => [
42
- ...skillSourcesForFolder(join(profileFolder, 'skills'), 'profile skills folder'),
43
- ...skillSourcesForFolder(join(profileFolder, 'cli_specific', 'pi', 'skills'), 'profile Pi skills folder'),
44
- ];
45
- const skillSourcesForFolder = (skillsFolder, description) => readOptionalDirectoryEntries(skillsFolder, description)
46
- .filter(isPiSkillEntry(skillsFolder))
47
- .map((entry) => join(skillsFolder, entry.name))
48
- .sort();
49
- const isPiSkillEntry = (folderPath) => (entry) => entry.isDirectory() && isFile(join(folderPath, entry.name, 'SKILL.md'));
50
- const readOptionalDirectoryEntries = (folderPath, description) => {
51
- try {
52
- return readdirSync(folderPath, { withFileTypes: true });
53
- }
54
- catch (error) {
55
- if (isMissingPathError(error)) {
56
- return [];
57
- }
58
- throw new Error(`Could not read ${description} '${folderPath}': ${String(error)}`, { cause: error });
59
- }
60
- };
61
- const isFile = (path) => {
62
- try {
63
- return statSync(path).isFile();
64
- }
65
- catch (error) {
66
- if (isMissingPathError(error)) {
67
- return false;
68
- }
69
- throw new Error(`Could not inspect file '${path}': ${String(error)}`, { cause: error });
70
- }
71
- };
72
- const isMissingPathError = (error) => error !== null && typeof error === 'object' && 'code' in error && error.code === 'ENOENT';
73
- //# sourceMappingURL=PiSkillSources.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PiSkillSources.js","sourceRoot":"","sources":["../../../src/agents/pi/PiSkillSources.ts"],"names":[],"mappings":"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"}
@@ -1,11 +0,0 @@
1
- import type { WelcomeCommandResult } from './WelcomeCommand.js';
2
- export interface PersistedFirstRunWelcomeProfile {
3
- readonly profileId: string;
4
- readonly createdProfile: boolean;
5
- readonly messages?: readonly string[];
6
- }
7
- export interface FirstRunWelcomeProfileOptions {
8
- readonly sourceProfileDirectory?: string;
9
- }
10
- export declare const persistFirstRunWelcomeProfile: (homeDirectory: string, settingsPath: string, welcomeResult: WelcomeCommandResult | undefined, options?: FirstRunWelcomeProfileOptions) => PersistedFirstRunWelcomeProfile | undefined;
11
- export declare const updateSettingsDefaultProfile: (settingsPath: string, profileId: string) => void;
@@ -1,110 +0,0 @@
1
- // Persists first-run welcome choices as a local profile used before launching Pi.
2
- import { cpSync, existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
3
- import { dirname, join } from 'node:path';
4
- import { parse, stringify } from 'yaml';
5
- export const persistFirstRunWelcomeProfile = (homeDirectory, settingsPath, welcomeResult, options = {}) => {
6
- if (welcomeResult === undefined || !welcomeResult.answered || welcomeResult.selectedRole === undefined) {
7
- return undefined;
8
- }
9
- const welcomeProfile = createFirstRunWelcomeProfile(welcomeResult, welcomeResult.selectedRole);
10
- const profileDirectory = join(homeDirectory, '.outfitter', 'profiles', welcomeProfile.id);
11
- const profilePath = join(profileDirectory, 'profile.yml');
12
- const createdProfile = !existsSync(profilePath);
13
- const messages = [];
14
- if (createdProfile) {
15
- if (options.sourceProfileDirectory !== undefined && existsSync(options.sourceProfileDirectory)) {
16
- cpSync(options.sourceProfileDirectory, profileDirectory, { recursive: true, force: false });
17
- updateCopiedProfile(profilePath, welcomeProfile.description, welcomeProfile.extensions);
18
- excludeDefaultProfileSources(settingsPath, welcomeProfile.id);
19
- messages.push(`Copied the ${welcomeProfile.label} profile locally so your extension choices can be edited at ${profilePath}.`);
20
- }
21
- else {
22
- mkdirSync(profileDirectory, { recursive: true });
23
- writeFileSync(profilePath, welcomeProfile.content);
24
- }
25
- }
26
- updateSettingsDefaultProfile(settingsPath, welcomeProfile.id);
27
- return {
28
- profileId: welcomeProfile.id,
29
- createdProfile,
30
- ...(messages.length === 0 ? {} : { messages }),
31
- };
32
- };
33
- const createFirstRunWelcomeProfile = (welcomeResult, selectedRole) => {
34
- const profileId = selectedRole.id;
35
- const extensions = welcomeResult.selectedLoadout?.selectedItems.map((item) => item.source) ?? [];
36
- const rolePrompt = firstRunWelcomeRolePrompts[selectedRole.id];
37
- return {
38
- id: profileId,
39
- label: selectedRole.label,
40
- description: selectedRole.description,
41
- content: createFirstRunWelcomeProfileContent(profileId, selectedRole.label, selectedRole.description, rolePrompt, extensions),
42
- extensions,
43
- };
44
- };
45
- const firstRunWelcomeRolePrompts = {
46
- founder: "You are operating as a founder-operator agent: builder, product thinker, research auditor, dense-prose editor, and careful operator. Do not behave like a generic senior engineer or a pure project manager.\n\nThe repo is the brain. Chat history is transient. Durable facts, decisions, requirements, plans, review outcomes, and lessons belong in project files when the work is substantive.\n\nIf the user's intent and acceptance criteria are clear, proceed without needless confirmation. Ask briefly when missing information would materially change the artifact, risk profile, or implementation path.\n\nFor nontrivial work, keep a visible task list with one in-progress item and checkable completion conditions. Requirements and milestone specs should use RFC 2119 keywords and acceptance criteria that can be checked from repo state or named external evidence.\n\nUse DeepWork, reviews, tests, browser evidence, source checks, or human-meaningful validation before calling substantive work done.\n\nOptimize substantive prose for density. Remove filler, keep every sentence load-bearing, preserve nuance, and avoid summaries that erase interesting claims.\n\nNumbers, market claims, schedules, legal or regulatory claims, current facts, prices, and recommendations require source checks when there is a meaningful chance of drift or high-stakes error.\n\nNever push, tag, merge, publish, deploy, send external messages, type credentials, make payments, perform legal filings, mutate production, or make irreversible data changes without explicit user approval.",
47
- engineer: 'You are operating as an engineering-focused coding agent.\nPrioritize maintainable implementation, clear tests, concise diffs, and verification evidence.\nBefore changing code, inspect the existing project conventions and reuse established patterns.',
48
- data_analyst: 'You are operating as a data-analysis-focused agent.\nPrioritize careful data inspection, reproducible analysis steps, clear assumptions, and actionable summaries.\nWhen data or methodology is uncertain, call out limitations and validation checks explicitly.',
49
- };
50
- const createFirstRunWelcomeProfileContent = (profileId, roleLabel, roleDescription, rolePrompt, extensions) => {
51
- const lines = [`id: ${profileId}`, `label: ${roleLabel}`, `description: ${roleDescription}`, 'controls:'];
52
- if (extensions.length > 0) {
53
- lines.push(' pi:', ' extensions:', ...extensions.map((extension) => ` - ${extension}`));
54
- }
55
- lines.push(' append_system_prompt: |', ...rolePrompt.split('\n').map((line) => ` ${line}`), '');
56
- return lines.join('\n');
57
- };
58
- const updateCopiedProfile = (profilePath, description, extensions) => {
59
- const profile = readRecord(parse(readFileSync(profilePath, 'utf8')));
60
- const controls = readRecord(profile.controls);
61
- const piControls = readRecord(controls.pi);
62
- profile.description ??= description;
63
- controls.extensions = [];
64
- piControls.extensions = [...extensions];
65
- controls.pi = piControls;
66
- profile.controls = controls;
67
- mkdirSync(dirname(profilePath), { recursive: true });
68
- writeFileSync(profilePath, stringify(profile));
69
- };
70
- const readRecord = (value) => value !== null && typeof value === 'object' && !Array.isArray(value) ? { ...value } : {};
71
- const defaultProfilesSourceGithub = 'ai-outfitter/default-profiles';
72
- const defaultProfilesSourcePath = 'profiles';
73
- const defaultProfilesSourceUri = 'https://github.com/ai-outfitter/default-profiles';
74
- const excludeDefaultProfileSources = (settingsPath, profileId) => {
75
- const document = readRecord(parse(readFileSync(settingsPath, 'utf8')));
76
- const rawProfileSources = document.profile_sources;
77
- const profileSources = Array.isArray(rawProfileSources) ? rawProfileSources : [];
78
- const nextProfileSources = profileSources.map((source) => {
79
- const record = readRecord(source);
80
- if (!isDefaultProfilesSource(record)) {
81
- return source;
82
- }
83
- const except = Array.isArray(record.except)
84
- ? record.except.filter((item) => typeof item === 'string')
85
- : [];
86
- return { ...record, except: [...new Set([...except, profileId])] };
87
- });
88
- writeFileSync(settingsPath, stringify({ ...document, profile_sources: nextProfileSources }));
89
- };
90
- const isDefaultProfilesSource = (source) => {
91
- if (source.path !== defaultProfilesSourcePath) {
92
- return false;
93
- }
94
- if (source.github === defaultProfilesSourceGithub) {
95
- return true;
96
- }
97
- return typeof source.uri === 'string' && normalizeDefaultProfilesSourceUri(source.uri) === defaultProfilesSourceUri;
98
- };
99
- const normalizeDefaultProfilesSourceUri = (uri) => uri
100
- .replace(/^git\+/u, '')
101
- .replace(/\/$/u, '')
102
- .replace(/\.git$/u, '');
103
- export const updateSettingsDefaultProfile = (settingsPath, profileId) => {
104
- const content = readFileSync(settingsPath, 'utf8');
105
- const nextContent = /^default_profile:.*$/mu.test(content)
106
- ? content.replace(/^default_profile:.*$/gmu, `default_profile: ${profileId}`)
107
- : `${content.replace(/\s*$/u, '\n')}default_profile: ${profileId}\n`;
108
- writeFileSync(settingsPath, nextContent);
109
- };
110
- //# sourceMappingURL=FirstRunWelcomeProfile.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FirstRunWelcomeProfile.js","sourceRoot":"","sources":["../../../src/cli/commands/FirstRunWelcomeProfile.ts"],"names":[],"mappings":"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"}
@@ -1,22 +0,0 @@
1
- import type { AgentLaunchPlan } from '../../agents/AgentAdapter.js';
2
- export interface PiRuntimeOnboardingLaunchInput {
3
- readonly autoOpenOutfitter?: boolean;
4
- readonly defaultProfilesPath?: string;
5
- readonly projectDirectory?: string;
6
- readonly setupSourceUri?: string;
7
- }
8
- export interface PiLaunchProfileIdentity {
9
- readonly id: string;
10
- readonly label?: string;
11
- }
12
- export interface PiLoginLaunchPlanInput {
13
- readonly adapterId: string;
14
- readonly homeDirectory: string;
15
- readonly launchPlan: AgentLaunchPlan;
16
- readonly profile?: PiLaunchProfileIdentity;
17
- readonly runtimeOnboarding?: PiRuntimeOnboardingLaunchInput;
18
- readonly startupAsciiArt?: boolean;
19
- readonly writeLine?: (message: string) => void;
20
- }
21
- export declare const preparePiLoginLaunchPlan: (input: PiLoginLaunchPlanInput) => AgentLaunchPlan;
22
- export declare const isNonInteractivePiLaunch: (args: readonly string[]) => boolean;