@odla-ai/cli 0.17.1 → 0.18.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/README.md +58 -0
- package/dist/bin.cjs +6358 -5088
- package/dist/bin.cjs.map +1 -1
- package/dist/bin.js +1 -1
- package/dist/{chunk-2UKO2NED.js → chunk-TOSMNGGQ.js} +6790 -5520
- package/dist/chunk-TOSMNGGQ.js.map +1 -0
- package/dist/index.cjs +6399 -5129
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +14 -2
- package/dist/index.d.ts +14 -2
- package/dist/index.js +1 -1
- package/dist/runtime/pi-agent.js +22417 -38138
- package/package.json +1 -1
- package/skills/odla/SKILL.md +100 -0
- package/skills/odla/references/pm.md +109 -0
- package/skills/odla/references/sdks.md +8 -5
- package/skills/odla-migrate/SKILL.md +4 -1
- package/skills/odla-migrate/references/phase-2-chapter.md +17 -6
- package/skills/odla-migrate/references/phase-2b-calendar.md +4 -4
- package/skills/odla-migrate/references/phase-3-auth.md +2 -2
- package/skills/odla-migrate/references/troubleshooting.md +23 -0
- package/skills/odla-o11y-debug/SKILL.md +14 -0
- package/dist/chunk-2UKO2NED.js.map +0 -1
package/dist/index.d.cts
CHANGED
|
@@ -3,7 +3,7 @@ import { HostedSecurityJob, GitHubConnectionStatus, GitHubSecuritySource, Hosted
|
|
|
3
3
|
export { GitHubConnectionAttempt, GitHubConnectionStatus, GitHubSecuritySource, HostedSecurityCounts, HostedSecurityCoverage, HostedSecurityIntent, HostedSecurityIntentResponse, HostedSecurityJob, HostedSecurityJobStatus, HostedSecurityPlan, HostedSecurityPlanRoute, HostedSecurityReport, HostedSecurityReportFinding, HostedSecurityRoute } from '@odla-ai/security/hosted';
|
|
4
4
|
|
|
5
5
|
/** One exact platform scope obtainable through the admin device flow. */
|
|
6
|
-
type ScopedPlatformScope = "platform:ai:policy:read" | "platform:ai:policy:write" | "platform:ai:credential:read" | "platform:ai:credential:write" | "platform:ai:usage:read" | "platform:ai:audit:read" | "app:code:host:connect" | "platform:code:host:connect" | "platform:security:self";
|
|
6
|
+
type ScopedPlatformScope = "platform:ai:policy:read" | "platform:ai:policy:write" | "platform:ai:credential:read" | "platform:ai:credential:write" | "platform:ai:usage:read" | "platform:ai:audit:read" | "app:code:host:connect" | "platform:code:host:connect" | "platform:security:self" | "platform:runbook:write";
|
|
7
7
|
/** Inputs for obtaining one short-lived, exact-scope platform device grant. */
|
|
8
8
|
interface ScopedPlatformTokenOptions {
|
|
9
9
|
platform: string;
|
|
@@ -15,6 +15,15 @@ interface ScopedPlatformTokenOptions {
|
|
|
15
15
|
stdout?: Pick<typeof console, "log">;
|
|
16
16
|
openApprovalUrl?: (url: string) => Promise<void>;
|
|
17
17
|
tokenFile?: string;
|
|
18
|
+
/**
|
|
19
|
+
* Project root the grant cache hangs off, mirroring how the developer token
|
|
20
|
+
* resolves `.odla/dev-token.json` against the loaded config's `rootDir`.
|
|
21
|
+
* Callers with a project should pass `cfg.rootDir`: without it the cache
|
|
22
|
+
* follows the shell's working directory rather than the project, so the same
|
|
23
|
+
* command run from a subdirectory reads a different cache — and writes a
|
|
24
|
+
* credential file wherever it happened to be standing.
|
|
25
|
+
*/
|
|
26
|
+
rootDir?: string;
|
|
18
27
|
/** Keep the shown-once grant only in memory. */
|
|
19
28
|
cache?: boolean;
|
|
20
29
|
/** Human-visible purpose recorded on the exact handshake. */
|
|
@@ -165,6 +174,9 @@ interface CliDependencies {
|
|
|
165
174
|
confirm?: (message: string) => Promise<boolean>;
|
|
166
175
|
stdout?: Pick<typeof console, "log" | "error">;
|
|
167
176
|
codeConnect?: (options: CodeConnectOptions) => Promise<void>;
|
|
177
|
+
/** Runs git in the working directory; injected so `runbook impact` can be
|
|
178
|
+
* driven over a fixed diff instead of whatever the checkout happens to be. */
|
|
179
|
+
runGit?: (args: string[]) => string;
|
|
168
180
|
}
|
|
169
181
|
/**
|
|
170
182
|
* Parse CLI arguments and dispatch the matching odla command.
|
|
@@ -180,7 +192,7 @@ interface CliDependencies {
|
|
|
180
192
|
declare function runCli(argv?: string[], dependencies?: CliDependencies): Promise<void>;
|
|
181
193
|
|
|
182
194
|
/** Hosted platform purposes whose provider, model, and budgets an admin may route. */
|
|
183
|
-
declare const SYSTEM_AI_PURPOSES: readonly ["o11y.triage", "security.discovery", "security.validation"];
|
|
195
|
+
declare const SYSTEM_AI_PURPOSES: readonly ["o11y.triage", "security.discovery", "security.validation", "runbook.answer"];
|
|
184
196
|
/** One catalog-validated, platform-funded System AI purpose. */
|
|
185
197
|
type SystemAiPurpose = (typeof SYSTEM_AI_PURPOSES)[number];
|
|
186
198
|
|
package/dist/index.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import { HostedSecurityJob, GitHubConnectionStatus, GitHubSecuritySource, Hosted
|
|
|
3
3
|
export { GitHubConnectionAttempt, GitHubConnectionStatus, GitHubSecuritySource, HostedSecurityCounts, HostedSecurityCoverage, HostedSecurityIntent, HostedSecurityIntentResponse, HostedSecurityJob, HostedSecurityJobStatus, HostedSecurityPlan, HostedSecurityPlanRoute, HostedSecurityReport, HostedSecurityReportFinding, HostedSecurityRoute } from '@odla-ai/security/hosted';
|
|
4
4
|
|
|
5
5
|
/** One exact platform scope obtainable through the admin device flow. */
|
|
6
|
-
type ScopedPlatformScope = "platform:ai:policy:read" | "platform:ai:policy:write" | "platform:ai:credential:read" | "platform:ai:credential:write" | "platform:ai:usage:read" | "platform:ai:audit:read" | "app:code:host:connect" | "platform:code:host:connect" | "platform:security:self";
|
|
6
|
+
type ScopedPlatformScope = "platform:ai:policy:read" | "platform:ai:policy:write" | "platform:ai:credential:read" | "platform:ai:credential:write" | "platform:ai:usage:read" | "platform:ai:audit:read" | "app:code:host:connect" | "platform:code:host:connect" | "platform:security:self" | "platform:runbook:write";
|
|
7
7
|
/** Inputs for obtaining one short-lived, exact-scope platform device grant. */
|
|
8
8
|
interface ScopedPlatformTokenOptions {
|
|
9
9
|
platform: string;
|
|
@@ -15,6 +15,15 @@ interface ScopedPlatformTokenOptions {
|
|
|
15
15
|
stdout?: Pick<typeof console, "log">;
|
|
16
16
|
openApprovalUrl?: (url: string) => Promise<void>;
|
|
17
17
|
tokenFile?: string;
|
|
18
|
+
/**
|
|
19
|
+
* Project root the grant cache hangs off, mirroring how the developer token
|
|
20
|
+
* resolves `.odla/dev-token.json` against the loaded config's `rootDir`.
|
|
21
|
+
* Callers with a project should pass `cfg.rootDir`: without it the cache
|
|
22
|
+
* follows the shell's working directory rather than the project, so the same
|
|
23
|
+
* command run from a subdirectory reads a different cache — and writes a
|
|
24
|
+
* credential file wherever it happened to be standing.
|
|
25
|
+
*/
|
|
26
|
+
rootDir?: string;
|
|
18
27
|
/** Keep the shown-once grant only in memory. */
|
|
19
28
|
cache?: boolean;
|
|
20
29
|
/** Human-visible purpose recorded on the exact handshake. */
|
|
@@ -165,6 +174,9 @@ interface CliDependencies {
|
|
|
165
174
|
confirm?: (message: string) => Promise<boolean>;
|
|
166
175
|
stdout?: Pick<typeof console, "log" | "error">;
|
|
167
176
|
codeConnect?: (options: CodeConnectOptions) => Promise<void>;
|
|
177
|
+
/** Runs git in the working directory; injected so `runbook impact` can be
|
|
178
|
+
* driven over a fixed diff instead of whatever the checkout happens to be. */
|
|
179
|
+
runGit?: (args: string[]) => string;
|
|
168
180
|
}
|
|
169
181
|
/**
|
|
170
182
|
* Parse CLI arguments and dispatch the matching odla command.
|
|
@@ -180,7 +192,7 @@ interface CliDependencies {
|
|
|
180
192
|
declare function runCli(argv?: string[], dependencies?: CliDependencies): Promise<void>;
|
|
181
193
|
|
|
182
194
|
/** Hosted platform purposes whose provider, model, and budgets an admin may route. */
|
|
183
|
-
declare const SYSTEM_AI_PURPOSES: readonly ["o11y.triage", "security.discovery", "security.validation"];
|
|
195
|
+
declare const SYSTEM_AI_PURPOSES: readonly ["o11y.triage", "security.discovery", "security.validation", "runbook.answer"];
|
|
184
196
|
/** One catalog-validated, platform-funded System AI purpose. */
|
|
185
197
|
type SystemAiPurpose = (typeof SYSTEM_AI_PURPOSES)[number];
|
|
186
198
|
|