@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,97 @@
|
|
|
1
|
+
import { homedir } from 'node:os';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
const DEFAULT_INSTANCE_ID = 'default';
|
|
4
|
+
const INSTANCE_ID = /^[a-z0-9](?:[a-z0-9-]{0,30}[a-z0-9])?$/;
|
|
5
|
+
const PORTABLE_RESERVED_NAME = /^(?:con|prn|aux|nul|clock\$|com[1-9]|lpt[1-9])$/i;
|
|
6
|
+
const POSIX_PLATFORMS = new Set([
|
|
7
|
+
'aix',
|
|
8
|
+
'android',
|
|
9
|
+
'cygwin',
|
|
10
|
+
'darwin',
|
|
11
|
+
'freebsd',
|
|
12
|
+
'haiku',
|
|
13
|
+
'linux',
|
|
14
|
+
'netbsd',
|
|
15
|
+
'openbsd',
|
|
16
|
+
'sunos',
|
|
17
|
+
]);
|
|
18
|
+
function fail(code) {
|
|
19
|
+
throw new Error(code);
|
|
20
|
+
}
|
|
21
|
+
function selectPath(platform) {
|
|
22
|
+
if (platform === 'win32')
|
|
23
|
+
return path.win32;
|
|
24
|
+
if (POSIX_PLATFORMS.has(platform))
|
|
25
|
+
return path.posix;
|
|
26
|
+
return fail('community_instance_platform_unsupported');
|
|
27
|
+
}
|
|
28
|
+
function normalizeAbsoluteDirectory(value, pathApi, code) {
|
|
29
|
+
if (typeof value !== 'string' || value === '' || value.trim() !== value || !pathApi.isAbsolute(value)) {
|
|
30
|
+
return fail(code);
|
|
31
|
+
}
|
|
32
|
+
const normalized = pathApi.normalize(value);
|
|
33
|
+
if (pathApi === path.win32 && !/^[A-Za-z]:\\/.test(normalized))
|
|
34
|
+
return fail(code);
|
|
35
|
+
if (normalized === pathApi.parse(normalized).root)
|
|
36
|
+
return fail(code);
|
|
37
|
+
return normalized;
|
|
38
|
+
}
|
|
39
|
+
function resolveInstanceId(value) {
|
|
40
|
+
const instanceId = value ?? DEFAULT_INSTANCE_ID;
|
|
41
|
+
if (typeof instanceId !== 'string'
|
|
42
|
+
|| !INSTANCE_ID.test(instanceId)
|
|
43
|
+
|| PORTABLE_RESERVED_NAME.test(instanceId)) {
|
|
44
|
+
return fail('community_instance_id_invalid');
|
|
45
|
+
}
|
|
46
|
+
return instanceId;
|
|
47
|
+
}
|
|
48
|
+
function isConfined(root, candidate, pathApi) {
|
|
49
|
+
const relative = pathApi.relative(root, candidate);
|
|
50
|
+
return relative !== ''
|
|
51
|
+
&& relative !== '..'
|
|
52
|
+
&& !relative.startsWith(`..${pathApi.sep}`)
|
|
53
|
+
&& !pathApi.isAbsolute(relative);
|
|
54
|
+
}
|
|
55
|
+
function resolveDataRoot(platform, environment, homeDirectory, pathApi) {
|
|
56
|
+
const home = normalizeAbsoluteDirectory(homeDirectory, pathApi, 'community_instance_home_invalid');
|
|
57
|
+
if (platform === 'win32') {
|
|
58
|
+
const localAppData = Object.prototype.hasOwnProperty.call(environment, 'LOCALAPPDATA')
|
|
59
|
+
? normalizeAbsoluteDirectory(environment.LOCALAPPDATA, pathApi, 'community_instance_local_app_data_invalid')
|
|
60
|
+
: pathApi.join(home, 'AppData', 'Local');
|
|
61
|
+
return pathApi.join(localAppData, 'AOPS', 'Community');
|
|
62
|
+
}
|
|
63
|
+
if (platform === 'darwin') {
|
|
64
|
+
return pathApi.join(home, 'Library', 'Application Support', 'AOPS', 'Community');
|
|
65
|
+
}
|
|
66
|
+
const xdgDataHome = Object.prototype.hasOwnProperty.call(environment, 'XDG_DATA_HOME')
|
|
67
|
+
? normalizeAbsoluteDirectory(environment.XDG_DATA_HOME, pathApi, 'community_instance_xdg_data_home_invalid')
|
|
68
|
+
: pathApi.join(home, '.local', 'share');
|
|
69
|
+
return pathApi.join(xdgDataHome, 'aops', 'community');
|
|
70
|
+
}
|
|
71
|
+
export function resolveCommunityInstanceLayout(options = {}) {
|
|
72
|
+
const platform = options.platform ?? process.platform;
|
|
73
|
+
const pathApi = selectPath(platform);
|
|
74
|
+
const environment = options.environment ?? process.env;
|
|
75
|
+
const instanceId = resolveInstanceId(options.instanceId);
|
|
76
|
+
const dataRoot = resolveDataRoot(platform, environment, options.homeDirectory ?? homedir(), pathApi);
|
|
77
|
+
const instanceRoot = pathApi.join(dataRoot, 'instances', instanceId);
|
|
78
|
+
const paths = {
|
|
79
|
+
stateDir: pathApi.join(instanceRoot, 'state'),
|
|
80
|
+
configDir: pathApi.join(instanceRoot, 'config'),
|
|
81
|
+
secretsDir: pathApi.join(instanceRoot, 'secrets'),
|
|
82
|
+
backupsDir: pathApi.join(instanceRoot, 'backups'),
|
|
83
|
+
stagingDir: pathApi.join(instanceRoot, 'staging'),
|
|
84
|
+
};
|
|
85
|
+
if (!pathApi.isAbsolute(dataRoot)
|
|
86
|
+
|| !isConfined(dataRoot, instanceRoot, pathApi)
|
|
87
|
+
|| Object.values(paths).some((candidate) => !isConfined(instanceRoot, candidate, pathApi))) {
|
|
88
|
+
return fail('community_instance_layout_escape');
|
|
89
|
+
}
|
|
90
|
+
return Object.freeze({
|
|
91
|
+
schemaVersion: 1,
|
|
92
|
+
instanceId,
|
|
93
|
+
dataRoot,
|
|
94
|
+
instanceRoot,
|
|
95
|
+
...paths,
|
|
96
|
+
});
|
|
97
|
+
}
|