@tickernelz/paperclip-pro-adapter-utils 2026.925.0 → 2026.925.1
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/acpx-engine/execute.d.ts.map +1 -1
- package/dist/acpx-engine/execute.js +32 -18
- package/dist/acpx-engine/execute.js.map +1 -1
- package/dist/acpx-engine/execute.test.js +3 -4
- package/dist/acpx-engine/execute.test.js.map +1 -1
- package/dist/paperclip-mcp-mount.d.ts +36 -0
- package/dist/paperclip-mcp-mount.d.ts.map +1 -0
- package/dist/paperclip-mcp-mount.js +101 -0
- package/dist/paperclip-mcp-mount.js.map +1 -0
- package/dist/paperclip-mcp.d.ts +53 -0
- package/dist/paperclip-mcp.d.ts.map +1 -0
- package/dist/paperclip-mcp.js +145 -0
- package/dist/paperclip-mcp.js.map +1 -0
- package/dist/paperclip-mcp.test.d.ts +2 -0
- package/dist/paperclip-mcp.test.d.ts.map +1 -0
- package/dist/paperclip-mcp.test.js +119 -0
- package/dist/paperclip-mcp.test.js.map +1 -0
- package/dist/server-utils.d.ts +4 -0
- package/dist/server-utils.d.ts.map +1 -1
- package/dist/server-utils.js +36 -25
- package/dist/server-utils.js.map +1 -1
- package/dist/server-utils.test.js +2 -2
- package/dist/server-utils.test.js.map +1 -1
- package/node_modules/bare-fs/binding.c +53 -24
- package/node_modules/bare-fs/index.d.ts +12 -10
- package/node_modules/bare-fs/index.js +13 -4
- package/node_modules/bare-fs/package.json +2 -1
- package/node_modules/bare-fs/prebuilds/android-arm/bare-fs.bare +0 -0
- package/node_modules/bare-fs/prebuilds/android-arm64/bare-fs.bare +0 -0
- package/node_modules/bare-fs/prebuilds/android-ia32/bare-fs.bare +0 -0
- package/node_modules/bare-fs/prebuilds/android-x64/bare-fs.bare +0 -0
- package/node_modules/bare-fs/prebuilds/darwin-arm64/bare-fs.bare +0 -0
- package/node_modules/bare-fs/prebuilds/darwin-x64/bare-fs.bare +0 -0
- package/node_modules/bare-fs/prebuilds/ios-arm64/bare-fs.bare +0 -0
- package/node_modules/bare-fs/prebuilds/ios-arm64-simulator/bare-fs.bare +0 -0
- package/node_modules/bare-fs/prebuilds/ios-x64-simulator/bare-fs.bare +0 -0
- package/node_modules/bare-fs/prebuilds/linux-arm64/bare-fs.bare +0 -0
- package/node_modules/bare-fs/prebuilds/linux-x64/bare-fs.bare +0 -0
- package/node_modules/bare-fs/prebuilds/win32-arm64/bare-fs.bare +0 -0
- package/node_modules/bare-fs/prebuilds/win32-x64/bare-fs.bare +0 -0
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../src/acpx-engine/execute.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EACV,kBAAkB,EAClB,uBAAuB,EACvB,sBAAsB,EACtB,YAAY,EACb,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAcL,KAAK,sBAAsB,EAI3B,KAAK,0BAA0B,EAC/B,KAAK,qCAAqC,EAC1C,KAAK,gCAAgC,EAEtC,MAAM,0DAA0D,CAAC;AAIlE,OAAO,KAAK,EAA+B,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../src/acpx-engine/execute.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,7 +11,9 @@ import { adapterExecutionTargetSessionIdentity, describeAdapterExecutionTarget,
|
|
|
11
11
|
import { captureLocalProcess, capturedProcessExited, killCapturedLocalProcess } from "./local-process-control.js";
|
|
12
12
|
import { DUPLEX_CHANNEL_LOST_ERROR_CODE } from "../bridge-transport-contract.js";
|
|
13
13
|
import { classifyWorkspaceRestoreFailure, describeWorkspaceRestoreFailure, } from "../workspace-restore-merge.js";
|
|
14
|
-
import {
|
|
14
|
+
import { paperclipAgentPromptTemplate, DEFAULT_PAPERCLIP_CONVERSATION_PROMPT_TEMPLATE, applyPaperclipWorkspaceEnv, asNumber, asString, buildInvocationEnvForLogs, buildPaperclipEnv, ensureAbsoluteDirectory, ensurePathInEnv, ensurePaperclipSkillSymlink, isForbiddenConfigEnvKey, isPaperclipExternalChatTurn, isPaperclipRuntimeEnvKey, joinPromptSections, materializePaperclipSkillCopy, parseObject, isPaperclipSkillSourceMissing, readPaperclipRuntimeSkillEntries, readPaperclipIssueWorkModeFromContext, renderPaperclipWakePrompt, renderTemplate, resolvePaperclipInstanceRootForAdapter, selectPaperclipTaskMarkdown, resolveLegacyPaperclipDesiredSkillNames, removeMaintainerOnlySkillSymlinks, rewriteWorkspaceCwdEnvVarsForExecution, shapePaperclipWorkspaceEnvForExecution, } from "@tickernelz/paperclip-pro-adapter-utils/server-utils";
|
|
15
|
+
import { PAPERCLIP_MCP_SERVER_NAME, paperclipAccessGuidance, paperclipAccessMode, paperclipMcpToolsets, } from "@tickernelz/paperclip-pro-adapter-utils/paperclip-mcp";
|
|
16
|
+
import { paperclipMcpHttpTarget } from "@tickernelz/paperclip-pro-adapter-utils/paperclip-mcp-mount";
|
|
15
17
|
import { shellQuote } from "@tickernelz/paperclip-pro-adapter-utils/ssh";
|
|
16
18
|
import { createAcpRuntime, createAgentRegistry, createRuntimeStore, isAcpRuntimeError, } from "acpx/runtime";
|
|
17
19
|
import { ACPX_DUPLEX_LOSS_CANCEL_DEADLINE_MS, ACPX_HANDSHAKE_TIMEOUT_MS, ACPX_HANDSHAKE_TRANSPORT_POLL_MS, DEFAULT_ACP_ENGINE_AGENT, DEFAULT_ACP_ENGINE_MODE, DEFAULT_ACP_ENGINE_NON_INTERACTIVE_PERMISSIONS, DEFAULT_ACP_ENGINE_PERMISSION_MODE, DEFAULT_ACP_ENGINE_TIMEOUT_SEC, DEFAULT_ACP_ENGINE_WARM_HANDLE_IDLE_MS, } from "./constants.js";
|
|
@@ -1159,6 +1161,25 @@ async function buildRuntime(input) {
|
|
|
1159
1161
|
url: server.url,
|
|
1160
1162
|
headers: [{ name: "Authorization", value: `Bearer ${server.token}` }],
|
|
1161
1163
|
}));
|
|
1164
|
+
const paperclipEnvForAccess = {
|
|
1165
|
+
...buildPaperclipEnv(agent),
|
|
1166
|
+
PAPERCLIP_RUN_ID: runId,
|
|
1167
|
+
...(authToken ? { PAPERCLIP_API_KEY: authToken } : {}),
|
|
1168
|
+
};
|
|
1169
|
+
const paperclipAccess = paperclipAccessMode(config, paperclipEnvForAccess);
|
|
1170
|
+
const paperclipToolsets = paperclipMcpToolsets(config);
|
|
1171
|
+
if (paperclipAccess === "mcp") {
|
|
1172
|
+
const target = paperclipMcpHttpTarget({
|
|
1173
|
+
env: paperclipEnvForAccess,
|
|
1174
|
+
toolsets: paperclipToolsets,
|
|
1175
|
+
});
|
|
1176
|
+
mcpServers.unshift({
|
|
1177
|
+
type: "http",
|
|
1178
|
+
name: PAPERCLIP_MCP_SERVER_NAME,
|
|
1179
|
+
url: target.url,
|
|
1180
|
+
headers: Object.entries(target.headers).map(([name, value]) => ({ name, value })),
|
|
1181
|
+
});
|
|
1182
|
+
}
|
|
1162
1183
|
// Resolve the wall-clock timeout through the shared execution-target
|
|
1163
1184
|
// resolver so sandbox-backed runs pick up the 4h backstop default while
|
|
1164
1185
|
// local/SSH runs keep the historical "0 = no adapter timeout" behavior.
|
|
@@ -1773,6 +1794,8 @@ async function buildRuntime(input) {
|
|
|
1773
1794
|
sessionStagingLeaseRelease,
|
|
1774
1795
|
remoteExecutionIdentity,
|
|
1775
1796
|
skillPromptInstructions,
|
|
1797
|
+
paperclipAccess,
|
|
1798
|
+
paperclipToolsets,
|
|
1776
1799
|
skillsIdentity: {
|
|
1777
1800
|
...skillsIdentity,
|
|
1778
1801
|
commandNotes: skillCommandNotes,
|
|
@@ -2062,26 +2085,16 @@ function renderPaperclipEnvNote(env) {
|
|
|
2062
2085
|
"Do not assume these variables are missing without checking your shell environment.",
|
|
2063
2086
|
].join("\n");
|
|
2064
2087
|
}
|
|
2065
|
-
function renderApiAccessNote(env) {
|
|
2088
|
+
function renderApiAccessNote(env, access, toolsets) {
|
|
2066
2089
|
if (!env.PAPERCLIP_API_URL || !env.PAPERCLIP_API_KEY)
|
|
2067
2090
|
return "";
|
|
2068
|
-
const lines = [
|
|
2069
|
-
|
|
2070
|
-
"Use terminal commands with curl to make Paperclip API requests.",
|
|
2071
|
-
"Normalize the base URL before adding API paths:",
|
|
2072
|
-
` PAPERCLIP_API_BASE="\${PAPERCLIP_API_URL%/}"; PAPERCLIP_API_BASE="\${PAPERCLIP_API_BASE%/api}"`,
|
|
2073
|
-
"GET example:",
|
|
2074
|
-
` curl -s -H "Authorization: Bearer $PAPERCLIP_API_KEY" "$PAPERCLIP_API_BASE/api/agents/me"`,
|
|
2075
|
-
];
|
|
2076
|
-
if (env.PAPERCLIP_TASK_ID) {
|
|
2077
|
-
lines.push("Scoped issue comment example:", ` curl -s -X POST -H "Authorization: Bearer $PAPERCLIP_API_KEY" -H "Content-Type: application/json" -H "X-Paperclip-Run-Id: $PAPERCLIP_RUN_ID" -d '{"body":"Status update from agent."}' "$PAPERCLIP_API_BASE/api/issues/$PAPERCLIP_TASK_ID/comments"`);
|
|
2078
|
-
}
|
|
2079
|
-
else {
|
|
2091
|
+
const lines = ["Paperclip API access note:", paperclipAccessGuidance(access, { toolsets })];
|
|
2092
|
+
if (!env.PAPERCLIP_TASK_ID) {
|
|
2080
2093
|
lines.push("Use a real issue id from the current context before making issue write requests.");
|
|
2081
2094
|
}
|
|
2082
2095
|
return lines.join("\n");
|
|
2083
2096
|
}
|
|
2084
|
-
async function buildPrompt(ctx, resumedSession, env) {
|
|
2097
|
+
async function buildPrompt(ctx, resumedSession, env, paperclipAccess, paperclipToolsets) {
|
|
2085
2098
|
const { agent, runId, config, context, onLog } = ctx;
|
|
2086
2099
|
const configuredPromptTemplate = asString(config.promptTemplate, "");
|
|
2087
2100
|
const hasCustomPromptTemplate = configuredPromptTemplate.trim().length > 0;
|
|
@@ -2089,7 +2102,7 @@ async function buildPrompt(ctx, resumedSession, env) {
|
|
|
2089
2102
|
? configuredPromptTemplate
|
|
2090
2103
|
: context.conversationMode === true
|
|
2091
2104
|
? DEFAULT_PAPERCLIP_CONVERSATION_PROMPT_TEMPLATE
|
|
2092
|
-
:
|
|
2105
|
+
: paperclipAgentPromptTemplate(paperclipAccess);
|
|
2093
2106
|
const instructionsFilePath = asString(config.instructionsFilePath, "").trim();
|
|
2094
2107
|
const instructionsDir = instructionsFilePath ? `${path.dirname(instructionsFilePath)}/` : "";
|
|
2095
2108
|
let instructionsPrefix = "";
|
|
@@ -2130,6 +2143,7 @@ async function buildPrompt(ctx, resumedSession, env) {
|
|
|
2130
2143
|
// The task-context markdown is the authoritative brief on this lane; keep
|
|
2131
2144
|
// the wake prompt's description copy out so the prompt carries it once.
|
|
2132
2145
|
suppressIssueDescription: taskContextNote.length > 0,
|
|
2146
|
+
paperclipAccess,
|
|
2133
2147
|
});
|
|
2134
2148
|
const shouldUseResumeDeltaPrompt = resumedSession && wakePrompt.length > 0;
|
|
2135
2149
|
const promptInstructionsPrefix = shouldUseResumeDeltaPrompt ? "" : instructionsPrefix;
|
|
@@ -2138,7 +2152,7 @@ async function buildPrompt(ctx, resumedSession, env) {
|
|
|
2138
2152
|
: renderTemplate(promptTemplate, templateData);
|
|
2139
2153
|
const sessionHandoffNote = asString(context.paperclipSessionHandoffMarkdown, "").trim();
|
|
2140
2154
|
const paperclipEnvNote = externalChatTurn ? "" : renderPaperclipEnvNote(env);
|
|
2141
|
-
const apiAccessNote = externalChatTurn ? "" : renderApiAccessNote(env);
|
|
2155
|
+
const apiAccessNote = externalChatTurn ? "" : renderApiAccessNote(env, paperclipAccess, paperclipToolsets);
|
|
2142
2156
|
const prompt = joinPromptSections([
|
|
2143
2157
|
promptInstructionsPrefix,
|
|
2144
2158
|
renderedBootstrapPrompt,
|
|
@@ -3672,7 +3686,7 @@ export function createAcpxEngineExecutor(deps = {}) {
|
|
|
3672
3686
|
// boundary. A failure here returns an error result with phase
|
|
3673
3687
|
// `prepare_turn`.
|
|
3674
3688
|
preparePhaseStart = now();
|
|
3675
|
-
const { prompt, promptMetrics, commandNotes } = await buildPrompt(ctx, resumedSession, prepared.env);
|
|
3689
|
+
const { prompt, promptMetrics, commandNotes } = await buildPrompt(ctx, resumedSession, prepared.env, prepared.paperclipAccess, prepared.paperclipToolsets);
|
|
3676
3690
|
runPrompt = joinPromptSections([prepared.skillPromptInstructions, prompt]);
|
|
3677
3691
|
await emitAcpxLog(ctx, {
|
|
3678
3692
|
type: "acpx.session",
|