@opengeni/core 3.0.0-canary.1 → 3.0.1-canary.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/dist/application/connect-operation.d.ts +3 -0
- package/dist/domain/connector-tool-permissions.d.ts +27 -0
- package/dist/domain/knowledge-files.d.ts +1 -1
- package/dist/domain/knowledge-messages.d.ts +2 -2
- package/dist/domain/knowledge-preparation.d.ts +9 -0
- package/dist/domain/knowledge-preparation.test.d.ts +1 -0
- package/dist/domain/organization-integration-catalog.d.ts +15 -0
- package/dist/domain/pr-review.d.ts +2 -2
- package/dist/index.d.ts +3 -0
- package/dist/index.js +666 -60
- package/dist/index.js.map +1 -1
- package/package.json +12 -12
- package/src/application/connect-operation.ts +32 -3
- package/src/domain/capabilities.ts +93 -1
- package/src/domain/connector-tool-permissions.ts +297 -0
- package/src/domain/knowledge-files.ts +10 -3
- package/src/domain/knowledge-messages.ts +1 -0
- package/src/domain/knowledge-preparation.test.ts +251 -0
- package/src/domain/knowledge-preparation.ts +126 -0
- package/src/domain/organization-integration-catalog.ts +83 -0
- package/src/domain/product-integration-pack.ts +1 -1
- package/src/domain/product-integration-skill.gen.ts +6 -2
- package/src/domain/resources.ts +8 -1
- package/src/domain/session-tool-policy.ts +12 -4
- package/src/domain/sessions.ts +165 -34
- package/src/index.ts +4 -0
|
@@ -23,6 +23,9 @@ export declare function executeConnectOperation(input: {
|
|
|
23
23
|
operationId: string;
|
|
24
24
|
/** Caller computes a stable keyed digest if input contains low-entropy secrets. */
|
|
25
25
|
inputDigest: string;
|
|
26
|
+
/** Trusted server adapter classification, never derived from request data.
|
|
27
|
+
* Cancellation releases pending setup; it acquires no integration authority. */
|
|
28
|
+
purpose?: "acquisition" | "cancellation";
|
|
26
29
|
authorize: ConnectOperationAuthorization;
|
|
27
30
|
execute: (attempt: ConnectAttempt) => Promise<PreparedConnectOperation>;
|
|
28
31
|
}): Promise<ConnectAttempt>;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { Settings } from "@opengeni/config";
|
|
2
|
+
import type { AccessGrant, ConnectorToolPermissionsResponse, UpdateConnectorToolPermissionsRequest } from "@opengeni/contracts";
|
|
3
|
+
import { type Database } from "@opengeni/db";
|
|
4
|
+
type Input = {
|
|
5
|
+
db: Database;
|
|
6
|
+
settings: Settings;
|
|
7
|
+
workspaceId: string;
|
|
8
|
+
grant: AccessGrant;
|
|
9
|
+
capabilityId: string;
|
|
10
|
+
personalOwnerVerified: boolean;
|
|
11
|
+
};
|
|
12
|
+
type ListedTool = {
|
|
13
|
+
name: string;
|
|
14
|
+
title?: string | undefined;
|
|
15
|
+
description?: string | undefined;
|
|
16
|
+
annotations?: {
|
|
17
|
+
readOnlyHint?: boolean | undefined;
|
|
18
|
+
destructiveHint?: boolean | undefined;
|
|
19
|
+
title?: string | undefined;
|
|
20
|
+
} | undefined;
|
|
21
|
+
};
|
|
22
|
+
export declare function connectorToolGroup(tool: ListedTool): "read" | "write" | "other";
|
|
23
|
+
export declare function getConnectorToolPermissions(input: Input): Promise<ConnectorToolPermissionsResponse>;
|
|
24
|
+
export declare function updateConnectorToolPermissions(input: Input & {
|
|
25
|
+
payload: UpdateConnectorToolPermissionsRequest;
|
|
26
|
+
}): Promise<void>;
|
|
27
|
+
export {};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type KnowledgeContext } from "@opengeni/db";
|
|
2
2
|
import type { ApiRouteDeps } from "../dependencies.js";
|
|
3
3
|
/** Existing original -> one source revision, through the ordinary task policy. */
|
|
4
|
-
export declare function prepareKnowledgeFile(deps: Pick<ApiRouteDeps, "db" | "objectStorage" | "getDocumentServices">, context: KnowledgeContext, fileId: string): Promise<{
|
|
4
|
+
export declare function prepareKnowledgeFile(deps: Pick<ApiRouteDeps, "db" | "objectStorage" | "getDocumentServices">, context: KnowledgeContext, fileId: string, purpose?: "evidence" | "reference"): Promise<{
|
|
5
5
|
status: "retained";
|
|
6
6
|
fileId: string;
|
|
7
7
|
filename: string;
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import { type Database, type KnowledgeContext } from "@opengeni/db";
|
|
2
2
|
/** Retain actual message bytes, never a model-authored reconstruction of a confirmation. */
|
|
3
3
|
export declare function retainKnowledgeMessage(db: Database, context: KnowledgeContext, messageId?: string): Promise<{
|
|
4
|
+
revisionId?: never;
|
|
4
5
|
retained: boolean;
|
|
5
6
|
reason: string;
|
|
6
7
|
entryId?: never;
|
|
7
|
-
revisionId?: never;
|
|
8
8
|
outcome?: never;
|
|
9
9
|
messageId?: never;
|
|
10
10
|
reused?: never;
|
|
11
11
|
} | {
|
|
12
|
+
revisionId?: never;
|
|
12
13
|
retained: boolean;
|
|
13
14
|
reason: string;
|
|
14
15
|
entryId: string;
|
|
15
|
-
revisionId?: never;
|
|
16
16
|
outcome?: never;
|
|
17
17
|
messageId?: never;
|
|
18
18
|
reused?: never;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { KnowledgeSavePreparationRequest, type KnowledgeSavePreparationResponse } from "@opengeni/contracts";
|
|
2
|
+
import { getKnowledgeEntry, listKnowledgeEntries, type Database, type KnowledgeContext } from "@opengeni/db";
|
|
3
|
+
import type { DocumentEmbedder } from "@opengeni/documents";
|
|
4
|
+
import { searchKnowledgeEntries } from "./knowledge-search.js";
|
|
5
|
+
export declare function prepareKnowledgeSave(db: Database, context: KnowledgeContext, input: KnowledgeSavePreparationRequest, embedder: () => DocumentEmbedder, services?: {
|
|
6
|
+
get: typeof getKnowledgeEntry;
|
|
7
|
+
list: typeof listKnowledgeEntries;
|
|
8
|
+
search: typeof searchKnowledgeEntries;
|
|
9
|
+
}): Promise<KnowledgeSavePreparationResponse>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { type IntegrationSource, type OrganizationIntegrationPolicy } from "@opengeni/contracts";
|
|
2
|
+
/** Admission for source discovery, before any credential-bearing network work.
|
|
3
|
+
* Auto-detection may try only protocols the organization actually permits.
|
|
4
|
+
*/
|
|
5
|
+
export declare function integrationSourceForOrganizationPolicy(policy: OrganizationIntegrationPolicy, source: IntegrationSource): IntegrationSource;
|
|
6
|
+
/** Product identities owned by the server, independent of mutable workspace catalogs. */
|
|
7
|
+
export declare function organizationIntegrationCatalog(): {
|
|
8
|
+
integrations: Array<{
|
|
9
|
+
key: string;
|
|
10
|
+
label: string;
|
|
11
|
+
kind: "curated" | "custom";
|
|
12
|
+
}>;
|
|
13
|
+
};
|
|
14
|
+
/** Only use for a validated built-in Connect adapter, never caller-authored catalog metadata. */
|
|
15
|
+
export declare function integrationKeyForConnectProvider(providerId: string): string | null;
|
|
@@ -42,7 +42,7 @@ export declare const prReviewAutomationAdapter: {
|
|
|
42
42
|
}) => {
|
|
43
43
|
initialMessage: string;
|
|
44
44
|
sessionTemplate: {
|
|
45
|
-
bundledSkillIds?: ("builtin:document-parsing" | "builtin:opengeni-documents" | "builtin:opengeni-presentations" | "builtin:opengeni-projects" | "builtin:opengeni-sites" | "builtin:opengeni-skills" | "builtin:opengeni-spreadsheets" | "builtin:opengeni-video-generation" | "builtin:opengeni-visualize")[] | undefined;
|
|
45
|
+
bundledSkillIds?: ("builtin:document-parsing" | "builtin:opengeni-documents" | "builtin:opengeni-help" | "builtin:opengeni-presentations" | "builtin:opengeni-projects" | "builtin:opengeni-sites" | "builtin:opengeni-skills" | "builtin:opengeni-spreadsheets" | "builtin:opengeni-video-generation" | "builtin:opengeni-visualize")[] | undefined;
|
|
46
46
|
prompt: string;
|
|
47
47
|
instructions: string | null;
|
|
48
48
|
resources: ({
|
|
@@ -81,7 +81,7 @@ export declare const prReviewAutomationAdapter: {
|
|
|
81
81
|
eager?: boolean | undefined;
|
|
82
82
|
optional?: boolean | undefined;
|
|
83
83
|
}[];
|
|
84
|
-
firstPartyMcpTools: ("artifacts_archive" | "artifacts_create" | "artifacts_get_source" | "artifacts_list" | "artifacts_prepare_upload" | "artifacts_publish" | "artifacts_restore" | "artifacts_rollback" | "atlassian_get" | "atlassian_search" | "atlassian_sources_list" | "browser_act" | "browser_auth" | "browser_clipboard" | "browser_debug" | "browser_identity" | "browser_lifecycle" | "browser_observe" | "browser_open" | "browser_publish" | "browser_tabs" | "capability_authorization_request" | "capability_catalog_search" | "command_read" | "command_wait" | "company_profile_confirm" | "company_profile_propose" | "computer_act" | "computer_clipboard" | "computer_lifecycle" | "computer_observe" | "computer_open" | "computer_targets" | "connected_machine_remove" | "editable_artifact_apply" | "editable_artifact_create" | "editable_artifact_export" | "editable_artifact_export_status" | "editable_artifact_get" | "editable_artifact_import" | "editable_artifact_inspect" | "editable_artifact_list" | "environment_list" | "environment_set_variable" | "fiken_bank_accounts_list" | "fiken_companies_list" | "fiken_contact_create" | "fiken_contacts_list" | "fiken_invoice_draft_create" | "fiken_invoice_get" | "fiken_invoices_list" | "fiken_products_list" | "fiken_purchases_list" | "fiken_sales_list" | "github_connect_link" | "github_repositories_list" | "goal_complete" | "goal_pause" | "goal_progress" | "goal_resume" | "goal_set" | "goal_update" | "instruction_policy_get" | "instruction_policy_propose" | "instruction_policy_save" | "interaction_discover" | "interaction_request_human" | "knowledge_archive" | "knowledge_browse" | "knowledge_correct" | "knowledge_get" | "knowledge_propose" | "knowledge_retain_file" | "knowledge_retain_message" | "knowledge_save" | "knowledge_search" | "memory_correct" | "memory_save" | "memory_search" | "preference_propose" | "preference_registry_get" | "preference_registry_summary" | "project_create" | "project_delete" | "project_get" | "project_list" | "project_reorder" | "project_update" | "reddit_accounts_list" | "reddit_mentions_live" | "reddit_post_reply" | "reddit_posts_sync" | "reddit_search_live" | "reddit_thread_fetch" | "remember" | "remember_confirm" | "rig_get" | "rig_list" | "rig_promote" | "rig_propose_change" | "rig_verify" | "run_on" | "sandbox_attach" | "sandbox_file_publish" | "sandbox_provision" | "sandbox_swap" | "sandboxes_list" | "scheduled_task_runs_list" | "scheduled_tasks_create" | "scheduled_tasks_delete" | "scheduled_tasks_get" | "scheduled_tasks_list" | "scheduled_tasks_pause" | "scheduled_tasks_resume" | "scheduled_tasks_trigger" | "scheduled_tasks_update" | "session_create" | "session_events" | "session_get" | "session_human_input_respond" | "session_pause" | "session_resume" | "session_send_message" | "session_set_project" | "session_steer" | "session_wait" | "sessions_list" | "set_other_session_title" | "set_session_title" | "slack_bot_channel_history" | "slack_bot_delete_message" | "slack_bot_file_content" | "slack_bot_file_info" | "slack_bot_list_channels" | "slack_bot_list_files" | "slack_bot_list_users" | "slack_bot_post_message" | "slack_bot_search" | "slack_bot_thread_replies" | "social_connections_list" | "social_daily_analysis_context" | "social_mentions_live" | "social_post_reply" | "social_posts_recent" | "social_posts_sync" | "social_search_live" | "social_thread_fetch" | "task_note_archive" | "task_note_promote_instruction_policy" | "task_note_promote_knowledge" | "task_note_promote_preference" | "task_note_replace" | "task_note_save" | "task_notes_list" | "variable_set_get_variable" | "variable_set_list" | "variable_set_set_variable" | "wait_for_input" | "work_claim_release" | "work_claim_upsert" | "x_accounts_list" | "x_mentions_live" | "x_post_reply" | "x_posts_sync" | "x_search_live" | "x_thread_fetch")[];
|
|
84
|
+
firstPartyMcpTools: ("artifacts_archive" | "artifacts_create" | "artifacts_get_source" | "artifacts_list" | "artifacts_prepare_upload" | "artifacts_publish" | "artifacts_restore" | "artifacts_rollback" | "atlassian_get" | "atlassian_search" | "atlassian_sources_list" | "browser_act" | "browser_auth" | "browser_clipboard" | "browser_debug" | "browser_identity" | "browser_lifecycle" | "browser_observe" | "browser_open" | "browser_publish" | "browser_tabs" | "capability_authorization_request" | "capability_catalog_search" | "command_read" | "command_wait" | "company_profile_confirm" | "company_profile_propose" | "computer_act" | "computer_clipboard" | "computer_lifecycle" | "computer_observe" | "computer_open" | "computer_targets" | "connected_machine_remove" | "editable_artifact_apply" | "editable_artifact_create" | "editable_artifact_export" | "editable_artifact_export_status" | "editable_artifact_get" | "editable_artifact_import" | "editable_artifact_inspect" | "editable_artifact_list" | "environment_list" | "environment_set_variable" | "fiken_bank_accounts_list" | "fiken_companies_list" | "fiken_contact_create" | "fiken_contacts_list" | "fiken_invoice_draft_create" | "fiken_invoice_get" | "fiken_invoices_list" | "fiken_products_list" | "fiken_purchases_list" | "fiken_sales_list" | "github_connect_link" | "github_repositories_list" | "goal_complete" | "goal_pause" | "goal_progress" | "goal_resume" | "goal_set" | "goal_update" | "instruction_policy_get" | "instruction_policy_propose" | "instruction_policy_save" | "interaction_discover" | "interaction_request_human" | "knowledge_archive" | "knowledge_browse" | "knowledge_correct" | "knowledge_get" | "knowledge_prepare_save" | "knowledge_propose" | "knowledge_retain_file" | "knowledge_retain_message" | "knowledge_save" | "knowledge_search" | "memory_correct" | "memory_save" | "memory_search" | "preference_propose" | "preference_registry_get" | "preference_registry_summary" | "project_create" | "project_delete" | "project_get" | "project_list" | "project_reorder" | "project_update" | "reddit_accounts_list" | "reddit_mentions_live" | "reddit_post_reply" | "reddit_posts_sync" | "reddit_search_live" | "reddit_thread_fetch" | "remember" | "remember_confirm" | "rig_get" | "rig_list" | "rig_promote" | "rig_propose_change" | "rig_verify" | "run_on" | "sandbox_attach" | "sandbox_file_publish" | "sandbox_provision" | "sandbox_swap" | "sandboxes_list" | "scheduled_task_runs_list" | "scheduled_tasks_create" | "scheduled_tasks_delete" | "scheduled_tasks_get" | "scheduled_tasks_list" | "scheduled_tasks_pause" | "scheduled_tasks_resume" | "scheduled_tasks_trigger" | "scheduled_tasks_update" | "session_create" | "session_events" | "session_get" | "session_human_input_respond" | "session_pause" | "session_resume" | "session_send_message" | "session_set_project" | "session_steer" | "session_wait" | "sessions_list" | "set_other_session_title" | "set_session_title" | "slack_bot_channel_history" | "slack_bot_delete_message" | "slack_bot_file_content" | "slack_bot_file_info" | "slack_bot_list_channels" | "slack_bot_list_files" | "slack_bot_list_users" | "slack_bot_post_message" | "slack_bot_search" | "slack_bot_thread_replies" | "social_connections_list" | "social_daily_analysis_context" | "social_mentions_live" | "social_post_reply" | "social_posts_recent" | "social_posts_sync" | "social_search_live" | "social_thread_fetch" | "task_note_archive" | "task_note_promote_instruction_policy" | "task_note_promote_knowledge" | "task_note_promote_preference" | "task_note_replace" | "task_note_save" | "task_notes_list" | "variable_set_get_variable" | "variable_set_list" | "variable_set_set_variable" | "wait_for_input" | "work_claim_release" | "work_claim_upsert" | "x_accounts_list" | "x_mentions_live" | "x_post_reply" | "x_posts_sync" | "x_search_live" | "x_thread_fetch")[];
|
|
85
85
|
firstPartyMcpPermissions: ("account:admin" | "account:read" | "api_keys:manage" | "artifacts:publish" | "artifacts:read" | "billing:manage" | "billing:read" | "capabilities:manage" | "codemode:call" | "connections:read" | "connections:write" | "documents:manage" | "documents:search" | "enrollments:manage" | "enrollments:read" | "environments:manage" | "environments:use" | "files:read" | "files:upload" | "files:write" | "github:manage" | "github:use" | "goals:manage" | "mcp_servers:attach" | "members:manage" | "rigs:manage" | "rigs:use" | "scheduled_tasks:manage" | "scheduled_tasks:run" | "secrets:list" | "secrets:read" | "secrets:write" | "sessions:control" | "sessions:create" | "sessions:read" | "stream:acknowledge" | "stream:control" | "stream:view" | "terminal:attach" | "variable-sets:attach" | "variable-sets:list" | "variable-sets:manage" | "variable-sets:read" | "variable-sets:use" | "variable-sets:write" | "workspace:admin" | "workspace:create" | "workspace:read")[];
|
|
86
86
|
model: string | null;
|
|
87
87
|
reasoningEffort: "high" | "low" | "max" | "medium" | "minimal" | "none" | "xhigh" | null;
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export * from "./domain/skills.js";
|
|
2
|
+
export * from "./domain/organization-integration-catalog.js";
|
|
2
3
|
export * from "./domain/knowledge.js";
|
|
3
4
|
export * from "./domain/knowledge-search.js";
|
|
4
5
|
export * from "./dependencies.js";
|
|
@@ -66,4 +67,6 @@ export * from "./editable-artifacts.js";
|
|
|
66
67
|
export { withSiteSessionOrigin } from "./site-session-origin.js";
|
|
67
68
|
export { fileOwnerContextForAccess, fileOwnerContextForAgent } from "./domain/file-owner.js";
|
|
68
69
|
export { prepareKnowledgeFile } from "./domain/knowledge-files.js";
|
|
70
|
+
export { prepareKnowledgeSave } from "./domain/knowledge-preparation.js";
|
|
69
71
|
export { retainKnowledgeMessage } from "./domain/knowledge-messages.js";
|
|
72
|
+
export * from "./domain/connector-tool-permissions.js";
|