@mrclrchtr/supi-web 1.1.3 → 1.3.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 +9 -0
- package/node_modules/@mrclrchtr/supi-core/README.md +9 -3
- package/node_modules/@mrclrchtr/supi-core/package.json +12 -2
- package/node_modules/@mrclrchtr/supi-core/src/api.ts +83 -0
- package/node_modules/@mrclrchtr/supi-core/src/extension.ts +1 -0
- package/package.json +9 -5
- package/src/api.ts +14 -0
- package/src/extension.ts +7 -0
package/README.md
CHANGED
|
@@ -18,6 +18,13 @@ pi install ./packages/supi-web
|
|
|
18
18
|
|
|
19
19
|
After editing the source, run `/reload` to pick up changes.
|
|
20
20
|
|
|
21
|
+
## Package surfaces
|
|
22
|
+
|
|
23
|
+
- `@mrclrchtr/supi-web/api` — programmatic exports (conversion helpers, fetch utilities, tool factories)
|
|
24
|
+
- `@mrclrchtr/supi-web/extension` — aggregated pi extension entrypoint that registers all three tools
|
|
25
|
+
|
|
26
|
+
`pi.extensions` still points at the real file path `./src/extension.ts` inside the package. The `/api` and `/extension` paths are consumer-facing package exports, not manifest aliases.
|
|
27
|
+
|
|
21
28
|
## What it adds
|
|
22
29
|
|
|
23
30
|
Registers three agent-callable tools:
|
|
@@ -81,6 +88,8 @@ The tool reads the `CONTEXT7_API_KEY` environment variable automatically when se
|
|
|
81
88
|
|
|
82
89
|
### Source files
|
|
83
90
|
|
|
91
|
+
- `src/api.ts` — public package exports
|
|
92
|
+
- `src/extension.ts` — aggregated extension entrypoint
|
|
84
93
|
- `src/web.ts` — `web_fetch_md` tool registration
|
|
85
94
|
- `src/docs.ts` — `web_docs_search` + `web_docs_fetch` tool registration
|
|
86
95
|
- `src/context7-client.ts` — thin wrapper around `@upstash/context7-sdk`
|
|
@@ -12,7 +12,12 @@ pnpm add @mrclrchtr/supi-core
|
|
|
12
12
|
|
|
13
13
|
## Package role
|
|
14
14
|
|
|
15
|
-
`@mrclrchtr/supi-core`
|
|
15
|
+
`@mrclrchtr/supi-core` now has two explicit surfaces:
|
|
16
|
+
|
|
17
|
+
- `@mrclrchtr/supi-core/api` — shared library helpers for other SuPi packages
|
|
18
|
+
- `@mrclrchtr/supi-core/extension` — a minimal pi extension that registers `/supi-settings`
|
|
19
|
+
|
|
20
|
+
`pi.extensions` still points at the real file path `./src/extension.ts` inside the package. The `/api` and `/extension` paths are consumer-facing package exports, not manifest aliases.
|
|
16
21
|
|
|
17
22
|
## What it provides
|
|
18
23
|
|
|
@@ -59,7 +64,7 @@ Main helpers:
|
|
|
59
64
|
## Example
|
|
60
65
|
|
|
61
66
|
```ts
|
|
62
|
-
import { loadSupiConfig, registerConfigSettings, wrapExtensionContext } from "@mrclrchtr/supi-core";
|
|
67
|
+
import { loadSupiConfig, registerConfigSettings, wrapExtensionContext } from "@mrclrchtr/supi-core/api";
|
|
63
68
|
|
|
64
69
|
const config = loadSupiConfig("my-extension", process.cwd(), {
|
|
65
70
|
enabled: true,
|
|
@@ -87,4 +92,5 @@ const message = wrapExtensionContext("my-extension", "hello", {
|
|
|
87
92
|
|
|
88
93
|
## Source
|
|
89
94
|
|
|
90
|
-
-
|
|
95
|
+
- Library surface: `src/api.ts`
|
|
96
|
+
- Extension surface: `src/extension.ts`
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mrclrchtr/supi-core",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.3.0",
|
|
4
4
|
"description": "SuPi core — shared infrastructure for SuPi extensions (XML context tags, config system)",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -30,5 +30,15 @@
|
|
|
30
30
|
"optional": true
|
|
31
31
|
}
|
|
32
32
|
},
|
|
33
|
-
"main": "src/
|
|
33
|
+
"main": "src/api.ts",
|
|
34
|
+
"exports": {
|
|
35
|
+
"./api": "./src/api.ts",
|
|
36
|
+
"./extension": "./src/extension.ts",
|
|
37
|
+
"./package.json": "./package.json"
|
|
38
|
+
},
|
|
39
|
+
"pi": {
|
|
40
|
+
"extensions": [
|
|
41
|
+
"./src/extension.ts"
|
|
42
|
+
]
|
|
43
|
+
}
|
|
34
44
|
}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
// supi-core — shared infrastructure for SuPi extensions.
|
|
2
|
+
// Provides XML context tag wrapping, unified config system, context-message utilities,
|
|
3
|
+
// and settings registry for supi-wide TUI settings.
|
|
4
|
+
|
|
5
|
+
export type { SupiConfigLocation, SupiConfigOptions } from "./config.ts";
|
|
6
|
+
export {
|
|
7
|
+
loadSupiConfig,
|
|
8
|
+
loadSupiConfigForScope,
|
|
9
|
+
removeSupiConfigKey,
|
|
10
|
+
writeSupiConfig,
|
|
11
|
+
} from "./config.ts";
|
|
12
|
+
export type { ConfigSettingsHelpers, ConfigSettingsOptions } from "./config-settings.ts";
|
|
13
|
+
export { registerConfigSettings } from "./config-settings.ts";
|
|
14
|
+
export type { ContextMessageLike } from "./context-messages.ts";
|
|
15
|
+
export {
|
|
16
|
+
findLastUserMessageIndex,
|
|
17
|
+
getContextToken,
|
|
18
|
+
getPromptContent,
|
|
19
|
+
pruneAndReorderContextMessages,
|
|
20
|
+
restorePromptContent,
|
|
21
|
+
} from "./context-messages.ts";
|
|
22
|
+
export type { ContextProvider } from "./context-provider-registry.ts";
|
|
23
|
+
export {
|
|
24
|
+
clearRegisteredContextProviders,
|
|
25
|
+
getRegisteredContextProviders,
|
|
26
|
+
registerContextProvider,
|
|
27
|
+
} from "./context-provider-registry.ts";
|
|
28
|
+
export { wrapExtensionContext } from "./context-tag.ts";
|
|
29
|
+
export type {
|
|
30
|
+
DebugAgentAccess,
|
|
31
|
+
DebugEvent,
|
|
32
|
+
DebugEventInput,
|
|
33
|
+
DebugEventQuery,
|
|
34
|
+
DebugEventQueryResult,
|
|
35
|
+
DebugEventView,
|
|
36
|
+
DebugLevel,
|
|
37
|
+
DebugNotifyLevel,
|
|
38
|
+
DebugRegistryConfig,
|
|
39
|
+
DebugSummary,
|
|
40
|
+
} from "./debug-registry.ts";
|
|
41
|
+
export {
|
|
42
|
+
clearDebugEvents,
|
|
43
|
+
configureDebugRegistry,
|
|
44
|
+
DEBUG_REGISTRY_DEFAULTS,
|
|
45
|
+
getDebugEvents,
|
|
46
|
+
getDebugRegistryConfig,
|
|
47
|
+
getDebugSummary,
|
|
48
|
+
recordDebugEvent,
|
|
49
|
+
redactDebugData,
|
|
50
|
+
resetDebugRegistry,
|
|
51
|
+
} from "./debug-registry.ts";
|
|
52
|
+
export type { KnownRootEntry } from "./project-roots.ts";
|
|
53
|
+
export {
|
|
54
|
+
buildKnownRootsMap,
|
|
55
|
+
byPathDepth,
|
|
56
|
+
dedupeTopmostRoots,
|
|
57
|
+
findProjectRoot,
|
|
58
|
+
isWithin,
|
|
59
|
+
isWithinOrEqual,
|
|
60
|
+
mergeKnownRoots,
|
|
61
|
+
resolveKnownRoot,
|
|
62
|
+
segmentCount,
|
|
63
|
+
sortRootsBySpecificity,
|
|
64
|
+
walkProject,
|
|
65
|
+
} from "./project-roots.ts";
|
|
66
|
+
export { getActiveBranchEntries } from "./session-utils.ts";
|
|
67
|
+
export { registerSettingsCommand } from "./settings-command.ts";
|
|
68
|
+
export type { SettingsScope, SettingsSection } from "./settings-registry.ts";
|
|
69
|
+
export {
|
|
70
|
+
clearRegisteredSettings,
|
|
71
|
+
getRegisteredSettings,
|
|
72
|
+
registerSettings,
|
|
73
|
+
} from "./settings-registry.ts";
|
|
74
|
+
export { createInputSubmenu, openSettingsOverlay } from "./settings-ui.ts";
|
|
75
|
+
export type { TitleTarget } from "./terminal.ts";
|
|
76
|
+
export {
|
|
77
|
+
DONE_SYMBOL,
|
|
78
|
+
formatTitle,
|
|
79
|
+
signalBell,
|
|
80
|
+
signalDone,
|
|
81
|
+
signalWaiting,
|
|
82
|
+
WAITING_SYMBOL,
|
|
83
|
+
} from "./terminal.ts";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { registerSettingsCommand as default } from "./settings-command.ts";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mrclrchtr/supi-web",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.3.0",
|
|
4
4
|
"description": "SuPi Web extension — fetch web pages as clean Markdown (web_fetch_md) and library docs via Context7 (web_docs_search, web_docs_fetch)",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"@mozilla/readability": "^0.6.0",
|
|
26
26
|
"turndown": "^7.2.0",
|
|
27
27
|
"turndown-plugin-gfm": "^1.0.2",
|
|
28
|
-
"@mrclrchtr/supi-core": "1.
|
|
28
|
+
"@mrclrchtr/supi-core": "1.3.0"
|
|
29
29
|
},
|
|
30
30
|
"bundledDependencies": [
|
|
31
31
|
"@mrclrchtr/supi-core"
|
|
@@ -44,9 +44,13 @@
|
|
|
44
44
|
},
|
|
45
45
|
"pi": {
|
|
46
46
|
"extensions": [
|
|
47
|
-
"./src/
|
|
48
|
-
"./src/docs.ts"
|
|
47
|
+
"./src/extension.ts"
|
|
49
48
|
]
|
|
50
49
|
},
|
|
51
|
-
"main": "src/
|
|
50
|
+
"main": "src/api.ts",
|
|
51
|
+
"exports": {
|
|
52
|
+
"./api": "./src/api.ts",
|
|
53
|
+
"./extension": "./src/extension.ts",
|
|
54
|
+
"./package.json": "./package.json"
|
|
55
|
+
}
|
|
52
56
|
}
|
package/src/api.ts
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SuPi Web extension — public API exports.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
export { htmlToMarkdown, wrapAsCodeBlock } from "./convert.ts";
|
|
6
|
+
export { default as docsExtension } from "./docs.ts";
|
|
7
|
+
export {
|
|
8
|
+
FetchError,
|
|
9
|
+
type FetchOptions,
|
|
10
|
+
type FetchResult,
|
|
11
|
+
fetchWithNegotiation,
|
|
12
|
+
isValidHttpUrl,
|
|
13
|
+
} from "./fetch.ts";
|
|
14
|
+
export { default } from "./web.ts";
|