raysurfer 0.5.11 → 0.5.13
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 +228 -68
- package/dist/client.d.ts +2 -3
- package/dist/client.d.ts.map +1 -1
- package/dist/index.js +13 -32
- package/dist/sdk-client.d.ts +0 -2
- package/dist/sdk-client.d.ts.map +1 -1
- package/dist/types.d.ts +8 -21
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
# RaySurfer TypeScript SDK
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
LLM output caching for AI agents. Retrieve proven code instead of
|
|
4
|
+
regenerating it.
|
|
4
5
|
|
|
5
6
|
## Installation
|
|
6
7
|
|
|
@@ -16,9 +17,221 @@ Set your API key:
|
|
|
16
17
|
export RAYSURFER_API_KEY=your_api_key_here
|
|
17
18
|
```
|
|
18
19
|
|
|
19
|
-
Get your key from the
|
|
20
|
+
Get your key from the
|
|
21
|
+
[dashboard](https://raysurfer.com/dashboard/api-keys).
|
|
20
22
|
|
|
21
|
-
##
|
|
23
|
+
## Low-Level API
|
|
24
|
+
|
|
25
|
+
For custom integrations, use the `RaySurfer` client directly with
|
|
26
|
+
any LLM provider.
|
|
27
|
+
|
|
28
|
+
### Complete Example
|
|
29
|
+
|
|
30
|
+
```typescript
|
|
31
|
+
import { RaySurfer } from "raysurfer";
|
|
32
|
+
|
|
33
|
+
const client = new RaySurfer({ apiKey: "your_api_key" });
|
|
34
|
+
const task = "Fetch GitHub trending repos";
|
|
35
|
+
|
|
36
|
+
// 1. Retrieve cached code files for a task
|
|
37
|
+
const result = await client.getCodeFiles({
|
|
38
|
+
task,
|
|
39
|
+
topK: 5,
|
|
40
|
+
minVerdictScore: 0.3,
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
// result.addToLlmPrompt contains a pre-formatted string like:
|
|
44
|
+
//
|
|
45
|
+
// You have access to pre-written code files:
|
|
46
|
+
// - .raysurfer_code/github_fetcher.ts: Fetches trending repos
|
|
47
|
+
// ...
|
|
48
|
+
|
|
49
|
+
// Augment your system prompt with cached code context
|
|
50
|
+
const basePrompt = "You are a helpful coding assistant.";
|
|
51
|
+
const augmentedPrompt = basePrompt + result.addToLlmPrompt;
|
|
52
|
+
|
|
53
|
+
// Use augmentedPrompt with any LLM provider (Anthropic, OpenAI, etc.)
|
|
54
|
+
|
|
55
|
+
// 2. Upload a new code file after execution
|
|
56
|
+
await client.uploadNewCodeSnip({
|
|
57
|
+
task,
|
|
58
|
+
fileWritten: {
|
|
59
|
+
path: "fetch_repos.ts",
|
|
60
|
+
content: "function fetch() { ... }",
|
|
61
|
+
},
|
|
62
|
+
succeeded: true,
|
|
63
|
+
executionLogs: "Fetched 10 trending repos successfully",
|
|
64
|
+
dependencies: { "node-fetch": "3.3.0", zod: "3.22.0" },
|
|
65
|
+
});
|
|
66
|
+
|
|
67
|
+
// 2b. Bulk upload prompts/logs/code for sandboxed grading
|
|
68
|
+
await client.uploadBulkCodeSnips(
|
|
69
|
+
["Build a CLI tool", "Add CSV support"],
|
|
70
|
+
[{ path: "cli.ts", content: "function main() { ... }" }],
|
|
71
|
+
[
|
|
72
|
+
{
|
|
73
|
+
path: "logs/run.log",
|
|
74
|
+
content: "Task completed",
|
|
75
|
+
encoding: "utf-8",
|
|
76
|
+
},
|
|
77
|
+
]
|
|
78
|
+
);
|
|
79
|
+
|
|
80
|
+
// 3. Vote on whether a cached snippet was useful
|
|
81
|
+
await client.voteCodeSnip({
|
|
82
|
+
task,
|
|
83
|
+
codeBlockId: result.files[0].codeBlockId,
|
|
84
|
+
codeBlockName: result.files[0].filename,
|
|
85
|
+
codeBlockDescription: result.files[0].description,
|
|
86
|
+
succeeded: true,
|
|
87
|
+
});
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
### Client Options
|
|
91
|
+
|
|
92
|
+
```typescript
|
|
93
|
+
const client = new RaySurfer({
|
|
94
|
+
apiKey: "your_api_key",
|
|
95
|
+
baseUrl: "https://api.raysurfer.com", // optional
|
|
96
|
+
timeout: 30000, // optional, in ms
|
|
97
|
+
organizationId: "org_xxx", // optional, for team namespacing
|
|
98
|
+
workspaceId: "ws_xxx", // optional, for enterprise namespacing
|
|
99
|
+
snipsDesired: "company", // optional, snippet scope
|
|
100
|
+
publicSnips: true, // optional, include community snippets
|
|
101
|
+
});
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
### Response Fields
|
|
105
|
+
|
|
106
|
+
The `getCodeFiles()` response includes:
|
|
107
|
+
|
|
108
|
+
| Field | Type | Description |
|
|
109
|
+
| ---------------- | ------------ | --------------------------------- |
|
|
110
|
+
| `files` | `CodeFile[]` | Retrieved code files with metadata|
|
|
111
|
+
| `task` | `string` | The task that was searched |
|
|
112
|
+
| `totalFound` | `number` | Total matches found |
|
|
113
|
+
| `addToLlmPrompt` | `string` | Pre-formatted string to append to LLM system prompt |
|
|
114
|
+
|
|
115
|
+
Each `CodeFile` contains `codeBlockId`, `filename`, `source`,
|
|
116
|
+
`description`, `verdictScore`, `thumbsUp`, `thumbsDown`, and
|
|
117
|
+
`similarityScore`.
|
|
118
|
+
|
|
119
|
+
### Store a Code Block with Full Metadata
|
|
120
|
+
|
|
121
|
+
```typescript
|
|
122
|
+
const result = await client.storeCodeBlock({
|
|
123
|
+
name: "GitHub User Fetcher",
|
|
124
|
+
source: "function fetchUser(username) { ... }",
|
|
125
|
+
entrypoint: "fetchUser",
|
|
126
|
+
language: "typescript",
|
|
127
|
+
description: "Fetches user data from GitHub API",
|
|
128
|
+
tags: ["github", "api", "user"],
|
|
129
|
+
dependencies: { "node-fetch": "3.3.0" },
|
|
130
|
+
});
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
### Retrieve Few-Shot Examples
|
|
134
|
+
|
|
135
|
+
```typescript
|
|
136
|
+
const examples = await client.getFewShotExamples(
|
|
137
|
+
"Parse CSV files",
|
|
138
|
+
3
|
|
139
|
+
);
|
|
140
|
+
|
|
141
|
+
for (const ex of examples) {
|
|
142
|
+
console.log(`Task: ${ex.task}`);
|
|
143
|
+
console.log(`Code: ${ex.codeSnippet}`);
|
|
144
|
+
}
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
### Retrieve Task Patterns
|
|
148
|
+
|
|
149
|
+
```typescript
|
|
150
|
+
const patterns = await client.getTaskPatterns({
|
|
151
|
+
task: "API integration",
|
|
152
|
+
minThumbsUp: 5,
|
|
153
|
+
topK: 20,
|
|
154
|
+
});
|
|
155
|
+
|
|
156
|
+
for (const p of patterns) {
|
|
157
|
+
console.log(`${p.taskPattern} -> ${p.codeBlockName}`);
|
|
158
|
+
}
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
### User-Provided Votes
|
|
162
|
+
|
|
163
|
+
Instead of relying on AI voting, provide your own votes:
|
|
164
|
+
|
|
165
|
+
```typescript
|
|
166
|
+
// Single upload with your own vote (AI voting is skipped)
|
|
167
|
+
await client.uploadNewCodeSnip({
|
|
168
|
+
task: "Fetch GitHub trending repos",
|
|
169
|
+
fileWritten: file,
|
|
170
|
+
succeeded: true,
|
|
171
|
+
userVote: 1, // 1 = thumbs up, -1 = thumbs down
|
|
172
|
+
});
|
|
173
|
+
|
|
174
|
+
// Bulk upload with per-file votes (AI grading is skipped)
|
|
175
|
+
await client.uploadBulkCodeSnips(
|
|
176
|
+
["Build a CLI tool", "Add CSV support"],
|
|
177
|
+
files,
|
|
178
|
+
logs,
|
|
179
|
+
true, // useRaysurferAiVoting (ignored when userVotes set)
|
|
180
|
+
{ "app.ts": 1, "utils.ts": -1 } // userVotes
|
|
181
|
+
);
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
### Method Reference
|
|
185
|
+
|
|
186
|
+
| Method | Description |
|
|
187
|
+
|--------|-------------|
|
|
188
|
+
| `search({ task, topK?, minVerdictScore?, preferComplete?, inputSchema? })` | Unified search for cached code (recommended) |
|
|
189
|
+
| `getCodeFiles({ task, topK?, minVerdictScore?, preferComplete?, cacheDir? })` | Retrieve cached code files with `addToLlmPrompt` for LLM augmentation |
|
|
190
|
+
| `getCodeSnips({ task, topK?, minVerdictScore? })` | Retrieve cached code snippets by semantic search |
|
|
191
|
+
| `retrieveBest({ task, topK?, minVerdictScore? })` | Retrieve the single best match |
|
|
192
|
+
| `getFewShotExamples(task, k)` | Retrieve few-shot examples for code generation prompting |
|
|
193
|
+
| `getTaskPatterns({ task, minThumbsUp?, topK? })` | Retrieve proven task-to-code mappings |
|
|
194
|
+
| `storeCodeBlock({ name, source, entrypoint, language, description, tags?, dependencies?, ... })` | Store a code block with full metadata |
|
|
195
|
+
| `uploadNewCodeSnip({ task, fileWritten, succeeded, useRaysurferAiVoting?, userVote?, executionLogs?, dependencies? })` | Store a single code file with optional dependency versions |
|
|
196
|
+
| `uploadBulkCodeSnips(prompts, filesWritten, logFiles?, useRaysurferAiVoting?, userVotes?)` | Bulk upload for grading (AI votes by default, or provide per-file votes) |
|
|
197
|
+
| `voteCodeSnip({ task, codeBlockId, codeBlockName, codeBlockDescription, succeeded })` | Vote on snippet usefulness |
|
|
198
|
+
|
|
199
|
+
### Exceptions
|
|
200
|
+
|
|
201
|
+
Both clients include built-in retry logic with exponential backoff
|
|
202
|
+
for transient failures (429, 5xx, network errors).
|
|
203
|
+
|
|
204
|
+
| Exception | Description |
|
|
205
|
+
| ----------------------- | ---------------------------------------------------- |
|
|
206
|
+
| `RaySurferError` | Base exception for all Raysurfer errors |
|
|
207
|
+
| `APIError` | API returned an error response (includes `statusCode`) |
|
|
208
|
+
| `AuthenticationError` | API key is invalid or missing |
|
|
209
|
+
| `CacheUnavailableError` | Cache backend is unreachable |
|
|
210
|
+
| `RateLimitError` | Rate limit exceeded after retries (includes `retryAfter`) |
|
|
211
|
+
| `ValidationError` | Request validation failed (includes `field`) |
|
|
212
|
+
|
|
213
|
+
```typescript
|
|
214
|
+
import { RaySurfer, RateLimitError } from "raysurfer";
|
|
215
|
+
|
|
216
|
+
const client = new RaySurfer({ apiKey: "your_api_key" });
|
|
217
|
+
|
|
218
|
+
try {
|
|
219
|
+
const result = await client.getCodeSnips({
|
|
220
|
+
task: "Fetch GitHub repos",
|
|
221
|
+
});
|
|
222
|
+
} catch (e) {
|
|
223
|
+
if (e instanceof RateLimitError) {
|
|
224
|
+
console.log(`Rate limited after retries: ${e.message}`);
|
|
225
|
+
if (e.retryAfter) {
|
|
226
|
+
console.log(`Try again in ${e.retryAfter}ms`);
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
---
|
|
233
|
+
|
|
234
|
+
## Claude Agent SDK Drop-in
|
|
22
235
|
|
|
23
236
|
Swap your import — everything else stays the same:
|
|
24
237
|
|
|
@@ -40,8 +253,8 @@ for await (const message of query({
|
|
|
40
253
|
}
|
|
41
254
|
```
|
|
42
255
|
|
|
43
|
-
All Claude SDK types are re-exported from `raysurfer`, so you don't
|
|
44
|
-
separate import:
|
|
256
|
+
All Claude SDK types are re-exported from `raysurfer`, so you don't
|
|
257
|
+
need a separate import:
|
|
45
258
|
|
|
46
259
|
```typescript
|
|
47
260
|
import {
|
|
@@ -52,16 +265,7 @@ import {
|
|
|
52
265
|
} from "raysurfer";
|
|
53
266
|
```
|
|
54
267
|
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
1. **On query**: Retrieves cached code blocks matching your task
|
|
58
|
-
2. **Injects into prompt**: Agent sees proven code snippets
|
|
59
|
-
3. **After success**: New code is cached for next time
|
|
60
|
-
|
|
61
|
-
Caching is enabled automatically when `RAYSURFER_API_KEY` is set. Without it,
|
|
62
|
-
behaves exactly like the original SDK.
|
|
63
|
-
|
|
64
|
-
## Class-based API
|
|
268
|
+
### Class-based API
|
|
65
269
|
|
|
66
270
|
```typescript
|
|
67
271
|
import { ClaudeSDKClient } from "raysurfer";
|
|
@@ -76,7 +280,7 @@ for await (const msg of client.query("Fetch data from GitHub API")) {
|
|
|
76
280
|
}
|
|
77
281
|
```
|
|
78
282
|
|
|
79
|
-
|
|
283
|
+
### System Prompt Preset
|
|
80
284
|
|
|
81
285
|
Use the Claude Code preset system prompt with appended instructions:
|
|
82
286
|
|
|
@@ -95,9 +299,10 @@ for await (const message of query({
|
|
|
95
299
|
}
|
|
96
300
|
```
|
|
97
301
|
|
|
98
|
-
|
|
302
|
+
### Query Control Methods
|
|
99
303
|
|
|
100
|
-
The `query()` function returns a `Query` object with full control
|
|
304
|
+
The `query()` function returns a `Query` object with full control
|
|
305
|
+
methods:
|
|
101
306
|
|
|
102
307
|
```typescript
|
|
103
308
|
const q = query({ prompt: "Build a REST API" });
|
|
@@ -111,6 +316,11 @@ const info = await q.accountInfo();
|
|
|
111
316
|
q.close();
|
|
112
317
|
```
|
|
113
318
|
|
|
319
|
+
### Without Caching
|
|
320
|
+
|
|
321
|
+
If `RAYSURFER_API_KEY` is not set, behaves exactly like the original
|
|
322
|
+
SDK — no caching, just a pass-through wrapper.
|
|
323
|
+
|
|
114
324
|
## Snippet Retrieval Scope
|
|
115
325
|
|
|
116
326
|
Control which cached snippets are retrieved:
|
|
@@ -148,56 +358,6 @@ const client = new ClaudeSDKClient({ publicSnips: true });
|
|
|
148
358
|
const rs = new RaySurfer({ apiKey: "...", publicSnips: true });
|
|
149
359
|
```
|
|
150
360
|
|
|
151
|
-
## Low-Level API
|
|
152
|
-
|
|
153
|
-
For custom integrations, use the `RaySurfer` client directly:
|
|
154
|
-
|
|
155
|
-
```typescript
|
|
156
|
-
import { RaySurfer } from "raysurfer";
|
|
157
|
-
|
|
158
|
-
const client = new RaySurfer({ apiKey: "your_api_key" });
|
|
159
|
-
|
|
160
|
-
// 1. Get cached code snippets for a task
|
|
161
|
-
const snips = await client.getCodeSnips({
|
|
162
|
-
task: "Fetch GitHub trending repos",
|
|
163
|
-
});
|
|
164
|
-
for (const match of snips.codeBlocks) {
|
|
165
|
-
console.log(`${match.codeBlock.name}: ${match.score}`);
|
|
166
|
-
}
|
|
167
|
-
|
|
168
|
-
// Or use the unified search endpoint
|
|
169
|
-
const searchResult = await client.search({
|
|
170
|
-
task: "Fetch GitHub trending repos",
|
|
171
|
-
});
|
|
172
|
-
for (const match of searchResult.matches) {
|
|
173
|
-
console.log(`${match.codeBlock.name}: ${match.combinedScore}`);
|
|
174
|
-
}
|
|
175
|
-
|
|
176
|
-
// 2. Upload a new code file after execution
|
|
177
|
-
await client.uploadNewCodeSnip(
|
|
178
|
-
"Fetch GitHub trending repos",
|
|
179
|
-
{ path: "fetch_repos.ts", content: "function fetch() { ... }" },
|
|
180
|
-
true // succeeded
|
|
181
|
-
);
|
|
182
|
-
|
|
183
|
-
// 2b. Bulk upload prompts/logs/code for sandboxed grading
|
|
184
|
-
await client.uploadBulkCodeSnips(
|
|
185
|
-
["Build a CLI tool", "Add CSV support"],
|
|
186
|
-
[{ path: "cli.ts", content: "function main() { ... }" }],
|
|
187
|
-
[{ path: "logs/run.log", content: "Task completed", encoding: "utf-8" }],
|
|
188
|
-
true
|
|
189
|
-
);
|
|
190
|
-
|
|
191
|
-
// 3. Vote on whether a cached snippet was useful
|
|
192
|
-
await client.voteCodeSnip({
|
|
193
|
-
task: "Fetch GitHub trending repos",
|
|
194
|
-
codeBlockId: "abc123",
|
|
195
|
-
codeBlockName: "github_fetcher",
|
|
196
|
-
codeBlockDescription: "Fetches trending repos from GitHub",
|
|
197
|
-
succeeded: true,
|
|
198
|
-
});
|
|
199
|
-
```
|
|
200
|
-
|
|
201
361
|
## License
|
|
202
362
|
|
|
203
363
|
MIT
|
package/dist/client.d.ts
CHANGED
|
@@ -16,8 +16,6 @@ export interface RaySurferOptions {
|
|
|
16
16
|
workspaceId?: string;
|
|
17
17
|
/** Scope of private snippets - "company" (Team/Enterprise) or "client" (Enterprise only) */
|
|
18
18
|
snipsDesired?: SnipsDesired;
|
|
19
|
-
/** Custom namespace for code storage/retrieval (overrides org-based namespacing) */
|
|
20
|
-
namespace?: string;
|
|
21
19
|
/** Include community public snippets (from github-snips) in retrieval results */
|
|
22
20
|
publicSnips?: boolean;
|
|
23
21
|
}
|
|
@@ -85,7 +83,6 @@ export declare class RaySurfer {
|
|
|
85
83
|
private organizationId?;
|
|
86
84
|
private workspaceId?;
|
|
87
85
|
private snipsDesired?;
|
|
88
|
-
private namespace?;
|
|
89
86
|
private publicSnips?;
|
|
90
87
|
constructor(options?: RaySurferOptions);
|
|
91
88
|
private request;
|
|
@@ -124,6 +121,7 @@ export declare class RaySurfer {
|
|
|
124
121
|
runUrl?: string;
|
|
125
122
|
workspaceId?: string;
|
|
126
123
|
dependencies?: Record<string, string>;
|
|
124
|
+
public?: boolean;
|
|
127
125
|
}, fileWritten?: FileWritten, succeeded?: boolean, cachedCodeBlocks?: Array<{
|
|
128
126
|
codeBlockId: string;
|
|
129
127
|
filename: string;
|
|
@@ -145,6 +143,7 @@ export declare class RaySurfer {
|
|
|
145
143
|
runUrl?: string;
|
|
146
144
|
workspaceId?: string;
|
|
147
145
|
dependencies?: Record<string, string>;
|
|
146
|
+
public?: boolean;
|
|
148
147
|
}, fileWritten?: FileWritten, succeeded?: boolean, cachedCodeBlocks?: Array<{
|
|
149
148
|
codeBlockId: string;
|
|
150
149
|
filename: string;
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;GAEG;AASH,eAAO,MAAM,OAAO,WAAW,CAAC;AAEhC,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EAEZ,gBAAgB,EAChB,kBAAkB,EAElB,kBAAkB,EAClB,oBAAoB,EACpB,2BAA2B,EAG3B,cAAc,EACd,cAAc,EACd,WAAW,EACX,oBAAoB,EACpB,mBAAmB,EACnB,OAAO,EAEP,oBAAoB,EACpB,yBAAyB,EACzB,0BAA0B,EAC1B,kBAAkB,EAClB,oBAAoB,EACpB,cAAc,EACd,YAAY,EACZ,sBAAsB,EACtB,sBAAsB,EACtB,6BAA6B,EAC7B,WAAW,EACZ,MAAM,SAAS,CAAC;AA2BjB,MAAM,WAAW,gBAAgB;IAC/B,wBAAwB;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,mBAAmB;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sCAAsC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qEAAqE;IACrE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,wEAAwE;IACxE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4FAA4F;IAC5F,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -94,7 +94,6 @@ class RaySurfer {
|
|
|
94
94
|
organizationId;
|
|
95
95
|
workspaceId;
|
|
96
96
|
snipsDesired;
|
|
97
|
-
namespace;
|
|
98
97
|
publicSnips;
|
|
99
98
|
constructor(options = {}) {
|
|
100
99
|
this.apiKey = options.apiKey;
|
|
@@ -103,7 +102,6 @@ class RaySurfer {
|
|
|
103
102
|
this.organizationId = options.organizationId;
|
|
104
103
|
this.workspaceId = options.workspaceId;
|
|
105
104
|
this.snipsDesired = options.snipsDesired;
|
|
106
|
-
this.namespace = options.namespace;
|
|
107
105
|
this.publicSnips = options.publicSnips;
|
|
108
106
|
}
|
|
109
107
|
async request(method, path, body, headersOverride) {
|
|
@@ -125,9 +123,6 @@ class RaySurfer {
|
|
|
125
123
|
if (this.publicSnips) {
|
|
126
124
|
headers["X-Raysurfer-Public-Snips"] = "true";
|
|
127
125
|
}
|
|
128
|
-
if (this.namespace) {
|
|
129
|
-
headers["X-Raysurfer-Namespace"] = this.namespace;
|
|
130
|
-
}
|
|
131
126
|
headers["X-Raysurfer-SDK-Version"] = `typescript/${VERSION}`;
|
|
132
127
|
if (headersOverride) {
|
|
133
128
|
Object.assign(headers, headersOverride);
|
|
@@ -281,6 +276,9 @@ class RaySurfer {
|
|
|
281
276
|
if (opts.dependencies) {
|
|
282
277
|
data.dependencies = opts.dependencies;
|
|
283
278
|
}
|
|
279
|
+
if (opts.public) {
|
|
280
|
+
data.public = true;
|
|
281
|
+
}
|
|
284
282
|
const result = await this.request("POST", "/api/store/execution-result", data, this.workspaceHeaders(opts.workspaceId));
|
|
285
283
|
return {
|
|
286
284
|
success: result.success,
|
|
@@ -343,10 +341,7 @@ class RaySurfer {
|
|
|
343
341
|
return {
|
|
344
342
|
matches: result.matches.map((m) => ({
|
|
345
343
|
codeBlock: this.parseCodeBlock(m.code_block),
|
|
346
|
-
|
|
347
|
-
vectorScore: m.vector_score,
|
|
348
|
-
verdictScore: m.verdict_score,
|
|
349
|
-
errorResilience: m.error_resilience,
|
|
344
|
+
score: m.score,
|
|
350
345
|
thumbsUp: m.thumbs_up,
|
|
351
346
|
thumbsDown: m.thumbs_down,
|
|
352
347
|
filename: m.filename,
|
|
@@ -355,8 +350,7 @@ class RaySurfer {
|
|
|
355
350
|
dependencies: normalizeDependencies(m.dependencies)
|
|
356
351
|
})),
|
|
357
352
|
totalFound: result.total_found,
|
|
358
|
-
cacheHit: result.cache_hit
|
|
359
|
-
searchNamespaces: result.search_namespaces ?? []
|
|
353
|
+
cacheHit: result.cache_hit
|
|
360
354
|
};
|
|
361
355
|
}
|
|
362
356
|
async getCodeSnips(params) {
|
|
@@ -368,8 +362,7 @@ class RaySurfer {
|
|
|
368
362
|
return {
|
|
369
363
|
codeBlocks: response.matches.map((m) => ({
|
|
370
364
|
codeBlock: m.codeBlock,
|
|
371
|
-
score: m.
|
|
372
|
-
verdictScore: m.verdictScore,
|
|
365
|
+
score: m.score,
|
|
373
366
|
thumbsUp: m.thumbsUp,
|
|
374
367
|
thumbsDown: m.thumbsDown,
|
|
375
368
|
recentExecutions: []
|
|
@@ -389,19 +382,16 @@ class RaySurfer {
|
|
|
389
382
|
if (first) {
|
|
390
383
|
bestMatch = {
|
|
391
384
|
codeBlock: first.codeBlock,
|
|
392
|
-
|
|
393
|
-
vectorScore: first.vectorScore,
|
|
394
|
-
verdictScore: first.verdictScore,
|
|
395
|
-
errorResilience: first.errorResilience,
|
|
385
|
+
score: first.score,
|
|
396
386
|
thumbsUp: first.thumbsUp,
|
|
397
387
|
thumbsDown: first.thumbsDown
|
|
398
388
|
};
|
|
399
|
-
bestScore = first.
|
|
389
|
+
bestScore = first.score;
|
|
400
390
|
}
|
|
401
391
|
const alternativeCandidates = response.matches.slice(1, 4).map((m) => ({
|
|
402
392
|
codeBlockId: m.codeBlock.id,
|
|
403
393
|
name: m.codeBlock.name,
|
|
404
|
-
|
|
394
|
+
score: m.score,
|
|
405
395
|
reason: m.thumbsUp > 0 ? `${m.thumbsUp} thumbs up, ${m.thumbsDown} thumbs down` : "No execution history"
|
|
406
396
|
}));
|
|
407
397
|
return {
|
|
@@ -434,8 +424,6 @@ class RaySurfer {
|
|
|
434
424
|
codeBlockName: p.code_block_name,
|
|
435
425
|
thumbsUp: p.thumbs_up,
|
|
436
426
|
thumbsDown: p.thumbs_down,
|
|
437
|
-
verdictScore: p.verdict_score,
|
|
438
|
-
errorResilience: p.error_resilience,
|
|
439
427
|
lastThumbsUp: p.last_thumbs_up,
|
|
440
428
|
lastThumbsDown: p.last_thumbs_down
|
|
441
429
|
}));
|
|
@@ -457,11 +445,9 @@ class RaySurfer {
|
|
|
457
445
|
outputSchema: m.codeBlock.outputSchema,
|
|
458
446
|
language: m.language,
|
|
459
447
|
dependencies: m.dependencies,
|
|
460
|
-
|
|
448
|
+
score: m.score,
|
|
461
449
|
thumbsUp: m.thumbsUp,
|
|
462
|
-
thumbsDown: m.thumbsDown
|
|
463
|
-
similarityScore: m.vectorScore,
|
|
464
|
-
combinedScore: m.combinedScore
|
|
450
|
+
thumbsDown: m.thumbsDown
|
|
465
451
|
}));
|
|
466
452
|
const addToLlmPrompt = this.formatLlmPrompt(files, params.cacheDir ?? ".raysurfer_code");
|
|
467
453
|
return {
|
|
@@ -494,7 +480,7 @@ class RaySurfer {
|
|
|
494
480
|
lines.push(`- **Description**: ${f.description}`);
|
|
495
481
|
lines.push(`- **Language**: ${f.language}`);
|
|
496
482
|
lines.push(`- **Entrypoint**: \`${f.entrypoint}\``);
|
|
497
|
-
lines.push(`- **Confidence**: ${Math.round(f.
|
|
483
|
+
lines.push(`- **Confidence**: ${Math.round(f.score * 100)}%`);
|
|
498
484
|
const deps = Object.entries(f.dependencies);
|
|
499
485
|
if (deps.length > 0) {
|
|
500
486
|
lines.push(`- **Dependencies**: ${deps.map(([k, v]) => `${k}@${v}`).join(", ")}`);
|
|
@@ -746,7 +732,6 @@ function augmentSystemPrompt(systemPrompt, addition) {
|
|
|
746
732
|
function splitOptions(options) {
|
|
747
733
|
const {
|
|
748
734
|
workspaceId,
|
|
749
|
-
namespace,
|
|
750
735
|
publicSnips,
|
|
751
736
|
debug,
|
|
752
737
|
workingDirectory,
|
|
@@ -756,7 +741,6 @@ function splitOptions(options) {
|
|
|
756
741
|
sdkOptions,
|
|
757
742
|
extras: {
|
|
758
743
|
workspaceId,
|
|
759
|
-
namespace,
|
|
760
744
|
publicSnips,
|
|
761
745
|
debug,
|
|
762
746
|
workingDirectory
|
|
@@ -819,7 +803,6 @@ class RaysurferQuery {
|
|
|
819
803
|
baseUrl: this._baseUrl,
|
|
820
804
|
workspaceId: this._extras.workspaceId,
|
|
821
805
|
snipsDesired: this._extras.workspaceId ? "client" : undefined,
|
|
822
|
-
namespace: this._extras.namespace,
|
|
823
806
|
publicSnips: this._extras.publicSnips
|
|
824
807
|
});
|
|
825
808
|
try {
|
|
@@ -840,9 +823,7 @@ class RaysurferQuery {
|
|
|
840
823
|
if (this._cachedFiles.length > 0) {
|
|
841
824
|
this._debug.table(this._cachedFiles.map((f) => ({
|
|
842
825
|
filename: f.filename,
|
|
843
|
-
|
|
844
|
-
verdict: `${Math.round(f.verdictScore * 100)}%`,
|
|
845
|
-
combined: `${Math.round(f.combinedScore * 100)}%`,
|
|
826
|
+
score: `${Math.round(f.score * 100)}%`,
|
|
846
827
|
thumbs: `${f.thumbsUp}/${f.thumbsDown}`,
|
|
847
828
|
sourceLength: `${f.source.length} chars`
|
|
848
829
|
})));
|
package/dist/sdk-client.d.ts
CHANGED
|
@@ -16,8 +16,6 @@ import type { Options, Query, SDKUserMessage } from "@anthropic-ai/claude-agent-
|
|
|
16
16
|
export interface RaysurferExtras {
|
|
17
17
|
/** Workspace ID for per-customer isolation (enterprise only) */
|
|
18
18
|
workspaceId?: string;
|
|
19
|
-
/** Custom namespace for code storage/retrieval */
|
|
20
|
-
namespace?: string;
|
|
21
19
|
/** Include community public snippets (from github-snips) in retrieval results */
|
|
22
20
|
publicSnips?: boolean;
|
|
23
21
|
/** Enable debug logging - also enabled via RAYSURFER_DEBUG=true env var */
|
package/dist/sdk-client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk-client.d.ts","sourceRoot":"","sources":["../src/sdk-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,OAAO,KAAK,EAMV,OAAO,EAEP,KAAK,EAGL,cAAc,EAEf,MAAM,gCAAgC,CAAC;AA6DxC,2DAA2D;AAC3D,MAAM,WAAW,eAAe;IAC9B,gEAAgE;IAChE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,
|
|
1
|
+
{"version":3,"file":"sdk-client.d.ts","sourceRoot":"","sources":["../src/sdk-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,OAAO,KAAK,EAMV,OAAO,EAEP,KAAK,EAGL,cAAc,EAEf,MAAM,gCAAgC,CAAC;AA6DxC,2DAA2D;AAC3D,MAAM,WAAW,eAAe;IAC9B,gEAAgE;IAChE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iFAAiF;IACjF,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,2EAA2E;IAC3E,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,oCAAoC;IACpC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,4EAA4E;AAC5E,MAAM,MAAM,qBAAqB,GAAG,OAAO,GAAG,eAAe,CAAC;AAE9D;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,qBAAqB,CAAC;AAEjD,kDAAkD;AAClD,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,GAAG,aAAa,CAAC,cAAc,CAAC,CAAC;IAC/C,OAAO,CAAC,EAAE,qBAAqB,CAAC;CACjC;AAilBD;;;;;;;;;;;;GAYG;AACH,wBAAgB,KAAK,CAAC,MAAM,EAAE,WAAW,GAAG,KAAK,CAEhD;AAED;;;;;;;;;GASG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,OAAO,CAAwB;gBAE3B,OAAO,GAAE,qBAA0B;IAI/C,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,CAAC,cAAc,CAAC,GAAG,KAAK;CAG7D;AAGD,OAAO,EAAE,eAAe,IAAI,eAAe,EAAE,CAAC;AAC9C,YAAY,EAAE,qBAAqB,IAAI,qBAAqB,EAAE,CAAC;AAE/D,eAAe,KAAK,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -74,13 +74,10 @@ export interface ExecutionRecord {
|
|
|
74
74
|
verdict?: AgentVerdict;
|
|
75
75
|
review?: AgentReview | null;
|
|
76
76
|
}
|
|
77
|
-
/** The best matching code block with
|
|
77
|
+
/** The best matching code block with scoring */
|
|
78
78
|
export interface BestMatch {
|
|
79
79
|
codeBlock: CodeBlock;
|
|
80
|
-
|
|
81
|
-
vectorScore: number;
|
|
82
|
-
verdictScore: number;
|
|
83
|
-
errorResilience: number;
|
|
80
|
+
score: number;
|
|
84
81
|
thumbsUp: number;
|
|
85
82
|
thumbsDown: number;
|
|
86
83
|
}
|
|
@@ -88,7 +85,7 @@ export interface BestMatch {
|
|
|
88
85
|
export interface AlternativeCandidate {
|
|
89
86
|
codeBlockId: string;
|
|
90
87
|
name: string;
|
|
91
|
-
|
|
88
|
+
score: number;
|
|
92
89
|
reason: string;
|
|
93
90
|
}
|
|
94
91
|
/** A few-shot example for code generation */
|
|
@@ -105,8 +102,6 @@ export interface TaskPattern {
|
|
|
105
102
|
codeBlockName: string;
|
|
106
103
|
thumbsUp: number;
|
|
107
104
|
thumbsDown: number;
|
|
108
|
-
verdictScore: number;
|
|
109
|
-
errorResilience: number;
|
|
110
105
|
lastThumbsUp?: string | null;
|
|
111
106
|
lastThumbsDown?: string | null;
|
|
112
107
|
}
|
|
@@ -137,7 +132,6 @@ export interface StoreExecutionResponse {
|
|
|
137
132
|
export interface CodeBlockMatch {
|
|
138
133
|
codeBlock: CodeBlock;
|
|
139
134
|
score: number;
|
|
140
|
-
verdictScore: number;
|
|
141
135
|
thumbsUp: number;
|
|
142
136
|
thumbsDown: number;
|
|
143
137
|
recentExecutions: ExecutionRecord[];
|
|
@@ -195,14 +189,9 @@ export interface CodeFile {
|
|
|
195
189
|
language: string;
|
|
196
190
|
/** Package name -> version (e.g., {"pandas": "2.1.0"}) */
|
|
197
191
|
dependencies: Record<string, string>;
|
|
198
|
-
|
|
199
|
-
verdictScore: number;
|
|
192
|
+
score: number;
|
|
200
193
|
thumbsUp: number;
|
|
201
194
|
thumbsDown: number;
|
|
202
|
-
/** Semantic similarity (0-1) */
|
|
203
|
-
similarityScore: number;
|
|
204
|
-
/** Combined score: similarity * 0.6 + verdict * 0.4 */
|
|
205
|
-
combinedScore: number;
|
|
206
195
|
}
|
|
207
196
|
/** Response with code files for a task */
|
|
208
197
|
export interface GetCodeFilesResponse {
|
|
@@ -212,13 +201,10 @@ export interface GetCodeFilesResponse {
|
|
|
212
201
|
/** Pre-formatted string to append to LLM system prompt with all file paths */
|
|
213
202
|
addToLlmPrompt: string;
|
|
214
203
|
}
|
|
215
|
-
/** A search match with
|
|
204
|
+
/** A search match with scoring */
|
|
216
205
|
export interface SearchMatch {
|
|
217
206
|
codeBlock: CodeBlock;
|
|
218
|
-
|
|
219
|
-
vectorScore: number;
|
|
220
|
-
verdictScore: number;
|
|
221
|
-
errorResilience: number;
|
|
207
|
+
score: number;
|
|
222
208
|
thumbsUp: number;
|
|
223
209
|
thumbsDown: number;
|
|
224
210
|
filename: string;
|
|
@@ -232,7 +218,6 @@ export interface SearchResponse {
|
|
|
232
218
|
matches: SearchMatch[];
|
|
233
219
|
totalFound: number;
|
|
234
220
|
cacheHit: boolean;
|
|
235
|
-
searchNamespaces: string[];
|
|
236
221
|
}
|
|
237
222
|
/** Request to vote on a code snippet */
|
|
238
223
|
export interface VoteCodeSnipParams {
|
|
@@ -295,6 +280,8 @@ export interface UploadNewCodeSnipOptions {
|
|
|
295
280
|
workspaceId?: string;
|
|
296
281
|
/** Package dependencies with versions (e.g., {"pandas": "2.1.0"}) */
|
|
297
282
|
dependencies?: Record<string, string>;
|
|
283
|
+
/** Upload to the public community namespace (default false) */
|
|
284
|
+
public?: boolean;
|
|
298
285
|
}
|
|
299
286
|
/** A public community snippet from the curated namespace */
|
|
300
287
|
export interface PublicSnippet {
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,2DAA2D;AAC3D,oBAAY,cAAc;IACxB,SAAS,cAAc;IACvB,OAAO,YAAY;IACnB,SAAS,cAAc;IACvB,SAAS,cAAc;CACxB;AAED,0DAA0D;AAC1D,oBAAY,YAAY;IACtB,SAAS,cAAc;IACvB,WAAW,gBAAgB;IAC3B,OAAO,YAAY;CACpB;AAED,8CAA8C;AAC9C,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,QAAQ,CAAC;AAEhD,+DAA+D;AAC/D,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,0DAA0D;IAC1D,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACjC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,0CAA0C;AAC1C,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,4DAA4D;AAC5D,MAAM,WAAW,WAAW;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,YAAY,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,eAAe,EAAE,OAAO,CAAC;IACzB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,mBAAmB,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACrC,aAAa,EAAE,OAAO,CAAC;IACvB,qBAAqB,EAAE,MAAM,EAAE,CAAC;IAChC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvC;AAED,2BAA2B;AAC3B,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,cAAc,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,EAAE,EAAE,WAAW,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;CAC7B;AAED,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|