@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.
- package/LICENSE +19 -0
- package/NOTICE +7 -0
- package/README.md +203 -0
- package/assets/agent-assets/core/SKILL.md +49 -0
- package/assets/agent-assets/core/references/agentspace/SKILL.md +78 -0
- package/assets/agent-assets/core/references/aops-cli-core/SKILL.md +108 -0
- package/assets/agent-assets/core/references/chatv3/SKILL.md +48 -0
- package/assets/agent-assets/core/references/collaborative-work/SKILL.md +85 -0
- package/assets/agent-assets/core/references/discuss/SKILL.md +66 -0
- package/assets/agent-assets/core/references/docman/SKILL.md +69 -0
- package/assets/agent-assets/core/references/hosted-chat/SKILL.md +64 -0
- package/assets/agent-assets/core/references/mission/SKILL.md +54 -0
- package/assets/agent-assets/core/references/projectman/SKILL.md +86 -0
- package/assets/agent-assets/core/references/sys/SKILL.md +36 -0
- package/assets/agent-assets/core/references/view/SKILL.md +58 -0
- package/assets/agent-assets/core/references/working-disciplines/SKILL.md +69 -0
- package/assets/agent-assets/core/user-guides/agent-assets.md +81 -0
- package/assets/agent-assets/core/user-guides/agentspace.md +1098 -0
- package/assets/agent-assets/core/user-guides/aops-cli.md +1107 -0
- package/assets/agent-assets/core/user-guides/aops-system.md +63 -0
- package/assets/agent-assets/core/user-guides/chatv3.md +113 -0
- package/assets/agent-assets/core/user-guides/docman.md +162 -0
- package/assets/agent-assets/core/user-guides/projectman.md +212 -0
- package/assets/agent-assets/core/user-guides/sys.md +94 -0
- package/assets/agent-assets/core/user-guides/working-disciplines.md +588 -0
- package/assets/agent-assets/gateway/aops/SKILL.md +14 -0
- package/assets/r6-remote-session-baseline.json +19 -0
- package/assets/skills/aops-install/SKILL.md +231 -0
- package/assets/skills/aops-install/agents/openai.yaml +4 -0
- package/dist/commands/activity.js +352 -0
- package/dist/commands/agent-profile.js +653 -0
- package/dist/commands/agent.js +710 -0
- package/dist/commands/agents-md.js +125 -0
- package/dist/commands/api.js +84 -0
- package/dist/commands/archive.js +873 -0
- package/dist/commands/artifact.js +535 -0
- package/dist/commands/assets.js +1414 -0
- package/dist/commands/auth/device-login.js +1 -0
- package/dist/commands/auth/legacy-export.js +177 -0
- package/dist/commands/auth/login.js +426 -0
- package/dist/commands/chat.js +1363 -0
- package/dist/commands/chatv3.js +1684 -0
- package/dist/commands/checkpoint.js +549 -0
- package/dist/commands/commercial-artifact.js +475 -0
- package/dist/commands/commercial-license.js +594 -0
- package/dist/commands/community-auth.js +62 -0
- package/dist/commands/community-cockpit.js +185 -0
- package/dist/commands/community-console.js +109 -0
- package/dist/commands/community-doctor.js +335 -0
- package/dist/commands/community-server.js +2062 -0
- package/dist/commands/community-setup.js +284 -0
- package/dist/commands/discuss.js +1448 -0
- package/dist/commands/doc.js +5219 -0
- package/dist/commands/experience.js +922 -0
- package/dist/commands/host.js +1127 -0
- package/dist/commands/init.js +118 -0
- package/dist/commands/memory.js +3129 -0
- package/dist/commands/mission.js +562 -0
- package/dist/commands/official-catalog.js +134 -0
- package/dist/commands/plan.js +84 -0
- package/dist/commands/playbook.js +415 -0
- package/dist/commands/pm/context.js +6 -0
- package/dist/commands/pm/index.js +701 -0
- package/dist/commands/pm/projectman.js +6266 -0
- package/dist/commands/project.js +1080 -0
- package/dist/commands/prompt.js +1024 -0
- package/dist/commands/repo-sync.js +1907 -0
- package/dist/commands/resource.js +527 -0
- package/dist/commands/skill.js +1211 -0
- package/dist/commands/start-disciplines.js +510 -0
- package/dist/commands/start.js +1343 -0
- package/dist/commands/target.js +309 -0
- package/dist/commands/version.js +42 -0
- package/dist/commands/view.js +1852 -0
- package/dist/launchers/cockpit.js +28 -0
- package/dist/launchers/options.js +74 -0
- package/dist/launchers/server.js +41 -0
- package/dist/lib/agent-assets/envelope.js +83 -0
- package/dist/lib/agent-assets/gateway.js +15 -0
- package/dist/lib/agent-assets/guards.js +23 -0
- package/dist/lib/agent-assets/hosted-discovery.js +148 -0
- package/dist/lib/agent-assets/hosted-package-input.js +154 -0
- package/dist/lib/agent-assets/legacy-pointer-migration.js +677 -0
- package/dist/lib/agent-assets/native-fs.js +589 -0
- package/dist/lib/agent-assets/package-manifest.js +324 -0
- package/dist/lib/agent-assets/portable-path.js +67 -0
- package/dist/lib/agent-assets/release-input.js +177 -0
- package/dist/lib/agent-assets/roots.js +45 -0
- package/dist/lib/agent-assets/runtime-binding-reader.js +545 -0
- package/dist/lib/agent-assets/runtime-targets.js +50 -0
- package/dist/lib/agent-assets/store-reader.js +1212 -0
- package/dist/lib/agent-assets/store-types.js +1 -0
- package/dist/lib/agent-assets/store-writer.js +1484 -0
- package/dist/lib/agent-assets/types.js +1 -0
- package/dist/lib/agent-assets/unicode-case-folding-v15-1.generated.js +1548 -0
- package/dist/lib/commercial-final-readiness.js +504 -0
- package/dist/lib/commercial-lifecycle-smoke-isolation.js +236 -0
- package/dist/lib/commercial-managed-postgres-docker-adapter.js +274 -0
- package/dist/lib/commercial-setup-readiness-adapter.js +179 -0
- package/dist/lib/community-client-contract.js +164 -0
- package/dist/lib/community-cockpit-lifecycle.js +601 -0
- package/dist/lib/community-command-abort.js +59 -0
- package/dist/lib/community-diagnostic.js +237 -0
- package/dist/lib/community-docker-adapter.js +498 -0
- package/dist/lib/community-home.js +31 -0
- package/dist/lib/community-instance-contract.js +148 -0
- package/dist/lib/community-instance-layout.js +97 -0
- package/dist/lib/community-lifecycle.js +1631 -0
- package/dist/lib/community-migration-snapshot.js +770 -0
- package/dist/lib/community-native-application-recovery.js +425 -0
- package/dist/lib/community-native-child.js +240 -0
- package/dist/lib/community-native-database-recovery.js +456 -0
- package/dist/lib/community-native-lifecycle.js +2458 -0
- package/dist/lib/community-native-migration.js +339 -0
- package/dist/lib/community-native-postgres.js +596 -0
- package/dist/lib/community-operation-journal.js +773 -0
- package/dist/lib/community-operation-lock.js +596 -0
- package/dist/lib/community-release-resolver.js +291 -0
- package/dist/lib/community-release-verifier.js +475 -0
- package/dist/lib/community-repo-discovery.js +252 -0
- package/dist/lib/community-setup-server-env.js +203 -0
- package/dist/lib/external-url.js +110 -0
- package/dist/lib/official-catalog-gateway.js +108 -0
- package/dist/lib/official-catalog.js +364 -0
- package/dist/lib/server-bootstrap.js +240 -0
- package/dist/lib/setup-agent-assets-bridge.js +176 -0
- package/dist/lib/setup-agent-assets-release.js +52 -0
- package/dist/lib/setup-external-postgres.js +108 -0
- package/dist/lib/setup-init-orchestrator.js +990 -0
- package/dist/lib/setup-install-guide.js +52 -0
- package/dist/lib/setup-installer-release.js +47 -0
- package/dist/lib/setup-local-postgres.js +329 -0
- package/dist/lib/setup-official-catalog-bridge.js +148 -0
- package/dist/lib/setup-readiness.js +888 -0
- package/dist/lib/tui-launcher.js +59 -0
- package/dist/main.js +150 -0
- package/dist/seeds/agents-md.js +54 -0
- package/dist/utils/agent-gateway.js +275 -0
- package/dist/utils/agents-md.js +281 -0
- package/dist/utils/api.js +255 -0
- package/dist/utils/chatv3-session-store.js +185 -0
- package/dist/utils/command.js +67 -0
- package/dist/utils/community-host-runtime.js +376 -0
- package/dist/utils/config.js +1015 -0
- package/dist/utils/discussion-workspace.js +552 -0
- package/dist/utils/experience-workspace.js +326 -0
- package/dist/utils/guide-paths.js +67 -0
- package/dist/utils/hosted-sugar.js +56 -0
- package/dist/utils/hosted-workspace.js +229 -0
- package/dist/utils/memory-workspace.js +537 -0
- package/dist/utils/operator-runtime.js +199 -0
- package/dist/utils/password-crypto.js +39 -0
- package/dist/utils/playbook-workspace.js +479 -0
- package/dist/utils/project-context.js +255 -0
- package/dist/utils/prompts.js +70 -0
- package/dist/utils/refresh-race.js +28 -0
- package/dist/utils/repo-config.js +109 -0
- package/dist/utils/repo-first-projectman.js +194 -0
- package/dist/utils/repo-first-storage.js +13 -0
- package/dist/utils/repo-first-view.js +305 -0
- package/dist/utils/session-guidance.js +278 -0
- package/dist/utils/session-state.js +137 -0
- package/dist/utils/table.js +39 -0
- package/dist/utils/transient-fs.js +49 -0
- package/dist/utils/workspace-root.js +1 -0
- package/launchers/aops-cockpit.ps1 +15 -0
- package/launchers/aops-cockpit.sh +16 -0
- package/launchers/aops-server.ps1 +15 -0
- package/launchers/aops-server.sh +16 -0
- package/native/tui/win32-x64/aops-tui.exe +0 -0
- 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
|
+
}
|