@aopslabs/aops 0.2.0

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 (171) hide show
  1. package/LICENSE +19 -0
  2. package/NOTICE +7 -0
  3. package/README.md +203 -0
  4. package/assets/agent-assets/core/SKILL.md +49 -0
  5. package/assets/agent-assets/core/references/agentspace/SKILL.md +78 -0
  6. package/assets/agent-assets/core/references/aops-cli-core/SKILL.md +108 -0
  7. package/assets/agent-assets/core/references/chatv3/SKILL.md +48 -0
  8. package/assets/agent-assets/core/references/collaborative-work/SKILL.md +85 -0
  9. package/assets/agent-assets/core/references/discuss/SKILL.md +66 -0
  10. package/assets/agent-assets/core/references/docman/SKILL.md +69 -0
  11. package/assets/agent-assets/core/references/hosted-chat/SKILL.md +64 -0
  12. package/assets/agent-assets/core/references/mission/SKILL.md +54 -0
  13. package/assets/agent-assets/core/references/projectman/SKILL.md +86 -0
  14. package/assets/agent-assets/core/references/sys/SKILL.md +36 -0
  15. package/assets/agent-assets/core/references/view/SKILL.md +58 -0
  16. package/assets/agent-assets/core/references/working-disciplines/SKILL.md +69 -0
  17. package/assets/agent-assets/core/user-guides/agent-assets.md +81 -0
  18. package/assets/agent-assets/core/user-guides/agentspace.md +1098 -0
  19. package/assets/agent-assets/core/user-guides/aops-cli.md +1107 -0
  20. package/assets/agent-assets/core/user-guides/aops-system.md +63 -0
  21. package/assets/agent-assets/core/user-guides/chatv3.md +113 -0
  22. package/assets/agent-assets/core/user-guides/docman.md +162 -0
  23. package/assets/agent-assets/core/user-guides/projectman.md +212 -0
  24. package/assets/agent-assets/core/user-guides/sys.md +94 -0
  25. package/assets/agent-assets/core/user-guides/working-disciplines.md +588 -0
  26. package/assets/agent-assets/gateway/aops/SKILL.md +14 -0
  27. package/assets/r6-remote-session-baseline.json +19 -0
  28. package/assets/skills/aops-install/SKILL.md +231 -0
  29. package/assets/skills/aops-install/agents/openai.yaml +4 -0
  30. package/dist/commands/activity.js +352 -0
  31. package/dist/commands/agent-profile.js +653 -0
  32. package/dist/commands/agent.js +710 -0
  33. package/dist/commands/agents-md.js +125 -0
  34. package/dist/commands/api.js +84 -0
  35. package/dist/commands/archive.js +873 -0
  36. package/dist/commands/artifact.js +535 -0
  37. package/dist/commands/assets.js +1414 -0
  38. package/dist/commands/auth/device-login.js +1 -0
  39. package/dist/commands/auth/legacy-export.js +177 -0
  40. package/dist/commands/auth/login.js +426 -0
  41. package/dist/commands/chat.js +1363 -0
  42. package/dist/commands/chatv3.js +1684 -0
  43. package/dist/commands/checkpoint.js +549 -0
  44. package/dist/commands/commercial-artifact.js +475 -0
  45. package/dist/commands/commercial-license.js +594 -0
  46. package/dist/commands/community-auth.js +62 -0
  47. package/dist/commands/community-cockpit.js +185 -0
  48. package/dist/commands/community-console.js +109 -0
  49. package/dist/commands/community-doctor.js +335 -0
  50. package/dist/commands/community-server.js +2062 -0
  51. package/dist/commands/community-setup.js +284 -0
  52. package/dist/commands/discuss.js +1448 -0
  53. package/dist/commands/doc.js +5219 -0
  54. package/dist/commands/experience.js +922 -0
  55. package/dist/commands/host.js +1127 -0
  56. package/dist/commands/init.js +118 -0
  57. package/dist/commands/memory.js +3129 -0
  58. package/dist/commands/mission.js +562 -0
  59. package/dist/commands/official-catalog.js +134 -0
  60. package/dist/commands/plan.js +84 -0
  61. package/dist/commands/playbook.js +415 -0
  62. package/dist/commands/pm/context.js +6 -0
  63. package/dist/commands/pm/index.js +701 -0
  64. package/dist/commands/pm/projectman.js +6266 -0
  65. package/dist/commands/project.js +1080 -0
  66. package/dist/commands/prompt.js +1024 -0
  67. package/dist/commands/repo-sync.js +1907 -0
  68. package/dist/commands/resource.js +527 -0
  69. package/dist/commands/skill.js +1211 -0
  70. package/dist/commands/start-disciplines.js +510 -0
  71. package/dist/commands/start.js +1343 -0
  72. package/dist/commands/target.js +309 -0
  73. package/dist/commands/version.js +42 -0
  74. package/dist/commands/view.js +1852 -0
  75. package/dist/launchers/cockpit.js +28 -0
  76. package/dist/launchers/options.js +74 -0
  77. package/dist/launchers/server.js +41 -0
  78. package/dist/lib/agent-assets/envelope.js +83 -0
  79. package/dist/lib/agent-assets/gateway.js +15 -0
  80. package/dist/lib/agent-assets/guards.js +23 -0
  81. package/dist/lib/agent-assets/hosted-discovery.js +148 -0
  82. package/dist/lib/agent-assets/hosted-package-input.js +154 -0
  83. package/dist/lib/agent-assets/legacy-pointer-migration.js +677 -0
  84. package/dist/lib/agent-assets/native-fs.js +589 -0
  85. package/dist/lib/agent-assets/package-manifest.js +324 -0
  86. package/dist/lib/agent-assets/portable-path.js +67 -0
  87. package/dist/lib/agent-assets/release-input.js +177 -0
  88. package/dist/lib/agent-assets/roots.js +45 -0
  89. package/dist/lib/agent-assets/runtime-binding-reader.js +545 -0
  90. package/dist/lib/agent-assets/runtime-targets.js +50 -0
  91. package/dist/lib/agent-assets/store-reader.js +1212 -0
  92. package/dist/lib/agent-assets/store-types.js +1 -0
  93. package/dist/lib/agent-assets/store-writer.js +1484 -0
  94. package/dist/lib/agent-assets/types.js +1 -0
  95. package/dist/lib/agent-assets/unicode-case-folding-v15-1.generated.js +1548 -0
  96. package/dist/lib/commercial-final-readiness.js +504 -0
  97. package/dist/lib/commercial-lifecycle-smoke-isolation.js +236 -0
  98. package/dist/lib/commercial-managed-postgres-docker-adapter.js +274 -0
  99. package/dist/lib/commercial-setup-readiness-adapter.js +179 -0
  100. package/dist/lib/community-client-contract.js +164 -0
  101. package/dist/lib/community-cockpit-lifecycle.js +601 -0
  102. package/dist/lib/community-command-abort.js +59 -0
  103. package/dist/lib/community-diagnostic.js +237 -0
  104. package/dist/lib/community-docker-adapter.js +498 -0
  105. package/dist/lib/community-home.js +31 -0
  106. package/dist/lib/community-instance-contract.js +148 -0
  107. package/dist/lib/community-instance-layout.js +97 -0
  108. package/dist/lib/community-lifecycle.js +1631 -0
  109. package/dist/lib/community-migration-snapshot.js +770 -0
  110. package/dist/lib/community-native-application-recovery.js +425 -0
  111. package/dist/lib/community-native-child.js +240 -0
  112. package/dist/lib/community-native-database-recovery.js +456 -0
  113. package/dist/lib/community-native-lifecycle.js +2458 -0
  114. package/dist/lib/community-native-migration.js +339 -0
  115. package/dist/lib/community-native-postgres.js +596 -0
  116. package/dist/lib/community-operation-journal.js +773 -0
  117. package/dist/lib/community-operation-lock.js +596 -0
  118. package/dist/lib/community-release-resolver.js +291 -0
  119. package/dist/lib/community-release-verifier.js +475 -0
  120. package/dist/lib/community-repo-discovery.js +252 -0
  121. package/dist/lib/community-setup-server-env.js +203 -0
  122. package/dist/lib/external-url.js +110 -0
  123. package/dist/lib/official-catalog-gateway.js +108 -0
  124. package/dist/lib/official-catalog.js +364 -0
  125. package/dist/lib/server-bootstrap.js +240 -0
  126. package/dist/lib/setup-agent-assets-bridge.js +176 -0
  127. package/dist/lib/setup-agent-assets-release.js +52 -0
  128. package/dist/lib/setup-external-postgres.js +108 -0
  129. package/dist/lib/setup-init-orchestrator.js +990 -0
  130. package/dist/lib/setup-install-guide.js +52 -0
  131. package/dist/lib/setup-installer-release.js +47 -0
  132. package/dist/lib/setup-local-postgres.js +329 -0
  133. package/dist/lib/setup-official-catalog-bridge.js +148 -0
  134. package/dist/lib/setup-readiness.js +888 -0
  135. package/dist/lib/tui-launcher.js +59 -0
  136. package/dist/main.js +150 -0
  137. package/dist/seeds/agents-md.js +54 -0
  138. package/dist/utils/agent-gateway.js +275 -0
  139. package/dist/utils/agents-md.js +281 -0
  140. package/dist/utils/api.js +255 -0
  141. package/dist/utils/chatv3-session-store.js +185 -0
  142. package/dist/utils/command.js +67 -0
  143. package/dist/utils/community-host-runtime.js +376 -0
  144. package/dist/utils/config.js +1015 -0
  145. package/dist/utils/discussion-workspace.js +552 -0
  146. package/dist/utils/experience-workspace.js +326 -0
  147. package/dist/utils/guide-paths.js +67 -0
  148. package/dist/utils/hosted-sugar.js +56 -0
  149. package/dist/utils/hosted-workspace.js +229 -0
  150. package/dist/utils/memory-workspace.js +537 -0
  151. package/dist/utils/operator-runtime.js +199 -0
  152. package/dist/utils/password-crypto.js +39 -0
  153. package/dist/utils/playbook-workspace.js +479 -0
  154. package/dist/utils/project-context.js +255 -0
  155. package/dist/utils/prompts.js +70 -0
  156. package/dist/utils/refresh-race.js +28 -0
  157. package/dist/utils/repo-config.js +109 -0
  158. package/dist/utils/repo-first-projectman.js +194 -0
  159. package/dist/utils/repo-first-storage.js +13 -0
  160. package/dist/utils/repo-first-view.js +305 -0
  161. package/dist/utils/session-guidance.js +278 -0
  162. package/dist/utils/session-state.js +137 -0
  163. package/dist/utils/table.js +39 -0
  164. package/dist/utils/transient-fs.js +49 -0
  165. package/dist/utils/workspace-root.js +1 -0
  166. package/launchers/aops-cockpit.ps1 +15 -0
  167. package/launchers/aops-cockpit.sh +16 -0
  168. package/launchers/aops-server.ps1 +15 -0
  169. package/launchers/aops-server.sh +16 -0
  170. package/native/tui/win32-x64/aops-tui.exe +0 -0
  171. package/package.json +81 -0
@@ -0,0 +1,164 @@
1
+ import { readFileSync } from 'node:fs';
2
+ import { fileURLToPath } from 'node:url';
3
+ export const COMMUNITY_PUBLIC_CLI_PACKAGE_NAME = '@aopslabs/aops';
4
+ export const COMMUNITY_CLI_COMMAND_SCHEMA_VERSION = 1;
5
+ export const COMMUNITY_CLIENT_COMPATIBILITY_SCHEMA_VERSION = 1;
6
+ export const COMMUNITY_CLIENT_COMPATIBILITY_PROTOCOL = 'aops-community-client-server';
7
+ function nonEmpty(value) {
8
+ if (typeof value !== 'string')
9
+ return undefined;
10
+ const normalized = value.trim();
11
+ return normalized || undefined;
12
+ }
13
+ function validSemver(value) {
14
+ return /^\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?$/.test(value);
15
+ }
16
+ function semverCore(value) {
17
+ const match = /^(\d+)\.(\d+)\.(\d+)/.exec(value);
18
+ return match ? [Number(match[1]), Number(match[2]), Number(match[3])] : undefined;
19
+ }
20
+ function compareCore(left, right) {
21
+ for (let index = 0; index < 3; index += 1) {
22
+ if (left[index] !== right[index])
23
+ return left[index] < right[index] ? -1 : 1;
24
+ }
25
+ return 0;
26
+ }
27
+ function resolveCommunityCliPackageVersion() {
28
+ try {
29
+ const manifest = JSON.parse(readFileSync(fileURLToPath(new URL('../../package.json', import.meta.url)), 'utf8'));
30
+ if (manifest.name !== COMMUNITY_PUBLIC_CLI_PACKAGE_NAME || typeof manifest.version !== 'string')
31
+ return undefined;
32
+ return nonEmpty(manifest.version);
33
+ }
34
+ catch {
35
+ return undefined;
36
+ }
37
+ }
38
+ export function resolveCommunityCliIdentity(environment = process.env) {
39
+ const injectedVersion = typeof __AOPS_CLI_VERSION__ !== 'undefined' ? __AOPS_CLI_VERSION__ : undefined;
40
+ const version = nonEmpty(environment.AOPS_CLI_VERSION) ?? nonEmpty(injectedVersion) ??
41
+ resolveCommunityCliPackageVersion() ?? '0.0.1';
42
+ if (!validSemver(version))
43
+ throw new Error('community_cli_version_invalid');
44
+ const injectedSource = typeof __AOPS_CLI_ARTIFACT_SOURCE__ !== 'undefined'
45
+ ? __AOPS_CLI_ARTIFACT_SOURCE__
46
+ : undefined;
47
+ const requestedSource = nonEmpty(environment.AOPS_CLI_ARTIFACT_SOURCE) ?? injectedSource ?? 'repo-local';
48
+ const artifactSource = requestedSource === 'repo-local' || requestedSource === 'public-release-bundle'
49
+ ? requestedSource
50
+ : 'unknown';
51
+ const commandSchemaVersion = typeof __AOPS_CLI_COMMAND_SCHEMA_VERSION__ !== 'undefined'
52
+ ? __AOPS_CLI_COMMAND_SCHEMA_VERSION__
53
+ : COMMUNITY_CLI_COMMAND_SCHEMA_VERSION;
54
+ if (!Number.isSafeInteger(commandSchemaVersion) || commandSchemaVersion < 1) {
55
+ throw new Error('community_cli_command_schema_invalid');
56
+ }
57
+ return Object.freeze({
58
+ packageName: COMMUNITY_PUBLIC_CLI_PACKAGE_NAME,
59
+ version,
60
+ commandSchemaVersion,
61
+ artifactSource,
62
+ launcher: 'unknown',
63
+ });
64
+ }
65
+ export function parseCommunityServerCompatibility(value) {
66
+ if (!value || typeof value !== 'object' || Array.isArray(value)) {
67
+ throw new Error('community_compatibility_handshake_missing');
68
+ }
69
+ const input = value;
70
+ const server = input.server;
71
+ const range = input.cliCommandSchema;
72
+ if (input.schemaVersion !== COMMUNITY_CLIENT_COMPATIBILITY_SCHEMA_VERSION ||
73
+ input.protocol !== COMMUNITY_CLIENT_COMPATIBILITY_PROTOCOL ||
74
+ !server || typeof server !== 'object' ||
75
+ !['aops-server', 'south'].includes(server.name) ||
76
+ !validSemver(String(server.packageVersion ?? '')) ||
77
+ (server.releaseVersion !== null && !validSemver(String(server.releaseVersion ?? ''))) ||
78
+ !['release', 'development'].includes(server.source) ||
79
+ !range || typeof range !== 'object' ||
80
+ !Number.isSafeInteger(range.min) || !Number.isSafeInteger(range.max) ||
81
+ range.min < 1 || range.max < range.min) {
82
+ throw new Error('community_compatibility_handshake_invalid');
83
+ }
84
+ return Object.freeze({
85
+ schemaVersion: 1,
86
+ protocol: COMMUNITY_CLIENT_COMPATIBILITY_PROTOCOL,
87
+ server: Object.freeze({
88
+ name: server.name,
89
+ packageVersion: String(server.packageVersion),
90
+ releaseVersion: server.releaseVersion === null ? null : String(server.releaseVersion),
91
+ source: server.source,
92
+ }),
93
+ cliCommandSchema: Object.freeze({ min: range.min, max: range.max }),
94
+ });
95
+ }
96
+ export function evaluateCommunityCompatibility(handshakeInput, cli = resolveCommunityCliIdentity()) {
97
+ let handshake;
98
+ try {
99
+ handshake = parseCommunityServerCompatibility(handshakeInput);
100
+ }
101
+ catch (error) {
102
+ return Object.freeze({
103
+ status: 'incompatible',
104
+ compatible: false,
105
+ reason: error instanceof Error ? error.message : 'community_compatibility_handshake_invalid',
106
+ cli,
107
+ });
108
+ }
109
+ const accepted = handshake.cliCommandSchema;
110
+ if (cli.commandSchemaVersion < accepted.min || cli.commandSchemaVersion > accepted.max) {
111
+ return Object.freeze({
112
+ status: 'incompatible',
113
+ compatible: false,
114
+ reason: `community_cli_command_schema_out_of_range:${cli.commandSchemaVersion}:${accepted.min}-${accepted.max}`,
115
+ cli,
116
+ server: handshake.server,
117
+ acceptedCommandSchema: accepted,
118
+ });
119
+ }
120
+ const releaseVersion = handshake.server.releaseVersion;
121
+ if (!releaseVersion) {
122
+ return Object.freeze({
123
+ status: 'warning',
124
+ compatible: true,
125
+ reason: 'community_server_development_identity',
126
+ cli,
127
+ server: handshake.server,
128
+ acceptedCommandSchema: accepted,
129
+ });
130
+ }
131
+ const cliCore = semverCore(cli.version);
132
+ const serverCore = semverCore(releaseVersion);
133
+ if (cliCore[0] !== serverCore[0]) {
134
+ return Object.freeze({
135
+ status: 'incompatible',
136
+ compatible: false,
137
+ reason: `community_release_major_mismatch:cli=${cli.version}:server=${releaseVersion}`,
138
+ cli,
139
+ server: handshake.server,
140
+ acceptedCommandSchema: accepted,
141
+ });
142
+ }
143
+ const comparison = compareCore(serverCore, cliCore);
144
+ if (comparison !== 0 || cli.version !== releaseVersion) {
145
+ return Object.freeze({
146
+ status: 'warning',
147
+ compatible: true,
148
+ reason: comparison > 0
149
+ ? `community_server_newer_than_cli:cli=${cli.version}:server=${releaseVersion}`
150
+ : `community_cli_server_version_difference:cli=${cli.version}:server=${releaseVersion}`,
151
+ cli,
152
+ server: handshake.server,
153
+ acceptedCommandSchema: accepted,
154
+ });
155
+ }
156
+ return Object.freeze({
157
+ status: 'compatible',
158
+ compatible: true,
159
+ reason: 'community_client_server_compatible',
160
+ cli,
161
+ server: handshake.server,
162
+ acceptedCommandSchema: accepted,
163
+ });
164
+ }