@omercnet/paseo-omp 1.2.0 → 1.3.0-next.227.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/OVERVIEW.md ADDED
@@ -0,0 +1,24 @@
1
+ OMP adds an agent provider for the OMP coding agent, plus an OMP sidebar and workspace panel for configuring it. Choose **OMP Plugin** when creating an agent, and Paseo runs OMP on the daemon host and maps its prompts, images, steering, tool permissions, subagents, session history and conversation rewind into Paseo. It runs alongside Paseo's bundled `omp` provider without changing it or migrating existing `omp` agents. Sessions created by an earlier alpha preview may need to be re-imported after an upgrade.
2
+
3
+ ## Setup
4
+
5
+ - Paseo 0.9.2 through 0.9.x, 0.10.x or 0.11.x.
6
+ - OMP 18.1.15 or newer on the daemon host, speaking RPC protocol v2. Older runtimes are rejected.
7
+ - Provider options let you change the OMP command, set environment values, choose an output redaction mode and set a session directory and timeout. Named OMP profiles appear as separate **OMP · <profile>** providers.
8
+
9
+ ## What the sidebar and panel do
10
+
11
+ - Edit OMP settings and project configuration for the default store or a named profile.
12
+ - Manage OMP's own plugins, and view quota history, memory, hub processes, session history and a support report.
13
+ - An **MCP** composer control runs OMP's MCP management in the current session, with authorization prompts shown in the chat.
14
+
15
+ ## Reads and sends
16
+
17
+ - Runs the OMP command as a process on the daemon host. Its output is passed to Paseo as produced, apart from validation and length limits.
18
+ - Reads OMP's settings, configuration, session transcripts, quota history, memory and hub state on the host, and writes OMP's settings file when you edit settings in the panel.
19
+ - With the default output redaction, nothing is redacted, so do not put credentials in prompts or tool output. The optional `configured-values` mode replaces configured credential values on a best-effort basis.
20
+ - Opens only http and https links, through Paseo.
21
+
22
+ ## Limits
23
+
24
+ Structured output schemas, archive and unarchive, revert of files, and exact MCP tool pre-approval are not supported, and requests for them fail visibly. Changing the approval mode of a running session needs a new session.
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Community OMP integration for Paseo. The plugin registers the distinct `omp-plugin` provider plus named profile providers and coexists with Paseo's bundled `omp` provider.
4
4
 
5
- > **Alpha preview:** persistence and protocol contracts are tested, but upgrades may still require re-importing sessions created by an earlier preview.
5
+ > **Stable:** see [Support](SUPPORT.md) for supported versions and known limitations, and review release notes for any migration requirements before upgrading.
6
6
 
7
7
  ## Demo
8
8
 
@@ -38,7 +38,7 @@ Open the **OMP** sidebar to review the provider-profile contract, choose which c
38
38
  - [Compatibility, limitations, and support](SUPPORT.md)
39
39
  - [Test matrix and release verification](TESTING.md)
40
40
  - [Core-provider issue and parity audit](docs/core-provider-issue-audit.md)
41
- - [Alpha release checklist](docs/alpha-release-checklist.md)
41
+ - [Release checklist](docs/release-checklist.md)
42
42
 
43
43
  The plugin uses public Paseo 0.9 and 0.10 provider and client contracts and registers distinct `omp-plugin` and `omp-plugin-<profile>` identities; it does not modify the bundled `omp` provider.
44
44
 
@@ -195,6 +195,19 @@ function PluginConfigurationSection({ styles }: { styles: OmpConfigStyles }) {
195
195
  </>
196
196
  );
197
197
  }
198
+
199
+ function ToolBoundaryCard({ styles }: { styles: OmpConfigStyles }) {
200
+ return (
201
+ <SectionCard styles={styles} title="Tool access boundary (fail-closed)">
202
+ <Text style={styles.muted}>
203
+ A session toolPolicy (exact preapproval grants) is rejected at startup. OMP set_host_tools
204
+ cannot preserve those grants exactly, and the plugin never broadens them. Use paseoTools to
205
+ scope which caller-scoped Paseo tools reach OMP as MCP host tools. Use disallowedTools only
206
+ for known native OMP built-ins: unknown names are rejected, and it never filters MCP tools.
207
+ </Text>
208
+ </SectionCard>
209
+ );
210
+ }
198
211
  function toneColor(theme: PluginSurfaceProps["theme"], tone: BinaryHealthSummary["tone"]): string {
199
212
  if (tone === "ok") return theme.colors.statusSuccess;
200
213
  if (tone === "warning") return theme.colors.statusWarning;
@@ -1136,6 +1149,7 @@ function OmpConfigContent({
1136
1149
  {view === "plugin" ? (
1137
1150
  <>
1138
1151
  <PluginConfigurationSection styles={styles} />
1152
+ <ToolBoundaryCard styles={styles} />
1139
1153
  {!cwd ? <ProviderLaunchSettingsSection theme={theme} /> : null}
1140
1154
  </>
1141
1155
  ) : null}
@@ -101,6 +101,9 @@ export function QuotaPopover(props: PluginButtonContentProps) {
101
101
  return (
102
102
  <View style={styles.root}>
103
103
  <Text style={styles.muted}>{storeLabel(store)}</Text>
104
+ <Text style={styles.muted}>
105
+ Last recorded usage from the local agent database, not read live from the provider.
106
+ </Text>
104
107
  {currentProvider && !hasCurrent ? (
105
108
  <Text style={styles.muted}>
106
109
  {`No recorded quota yet for ${quotaProviderLabel(currentProvider)} (this session's provider).`}
package/index.client.tsx CHANGED
@@ -351,7 +351,7 @@ export default function contribute(client: PluginClientContext) {
351
351
  workspaceId: entry.workspaceId,
352
352
  agentId: agent.id,
353
353
  button: {
354
- title: "OMP provider quotas",
354
+ title: "OMP provider quotas (last recorded usage, not live)",
355
355
  icon: quotaProviderIcon(entry.quotaProvider, "unknown"),
356
356
  label: "Quota",
357
357
  visible: false,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@omercnet/paseo-omp",
3
- "version": "1.2.0",
3
+ "version": "1.3.0-next.227.1",
4
4
  "type": "module",
5
5
  "description": "Paseo integration for OMP, including its direct provider and workspace tooling.",
6
6
  "license": "MIT",
@@ -37,7 +37,8 @@
37
37
  "client",
38
38
  "server",
39
39
  "shared",
40
- "paseo-plugin.json"
40
+ "paseo-plugin.json",
41
+ "OVERVIEW.md"
41
42
  ],
42
43
  "scripts": {
43
44
  "check": "biome check .",
@@ -51,16 +52,16 @@
51
52
  "typecheck": "tsc --noEmit -p tsconfig.client.json && tsc --noEmit -p tsconfig.server.json && tsc --noEmit -p tsconfig.tests.json"
52
53
  },
53
54
  "dependencies": {
54
- "@getpaseo/protocol": "0.11.0-beta.3",
55
+ "@getpaseo/protocol": "0.11.0-beta.5",
55
56
  "@modelcontextprotocol/sdk": "1.30.0",
56
57
  "yaml": "^2.9.0"
57
58
  },
58
59
  "devDependencies": {
59
60
  "@biomejs/biome": "^2.5.10",
60
- "@getpaseo/cli": "0.11.0-beta.3",
61
- "@getpaseo/client": "0.11.0-beta.3",
62
- "@getpaseo/plugin": "0.11.0-beta.3",
63
- "@getpaseo/server": "0.11.0-beta.3",
61
+ "@getpaseo/cli": "0.11.0-beta.5",
62
+ "@getpaseo/client": "0.11.0-beta.5",
63
+ "@getpaseo/plugin": "0.11.0-beta.5",
64
+ "@getpaseo/server": "0.11.0-beta.5",
64
65
  "@oh-my-pi/pi-agent-core": "18.2.0",
65
66
  "@oh-my-pi/pi-coding-agent": "18.2.0",
66
67
  "@tanstack/react-query": "^5.102.3",
@@ -68,9 +69,9 @@
68
69
  "@types/react": "^19.2.18",
69
70
  "@vitest/coverage-v8": "^5.0.0",
70
71
  "esbuild": "0.28.2",
72
+ "pino": "10.3.1",
71
73
  "react": "19.1.0",
72
74
  "react-native": "0.81.5",
73
- "pino": "10.3.1",
74
75
  "tsx": "^4.20.6",
75
76
  "typescript": "^7.0.2",
76
77
  "vitest": "^5.0.0",
@@ -1,2 +1,2 @@
1
1
  /** Release Please keeps this bundle-safe constant aligned with package.json. */
2
- export const PASEO_OMP_PACKAGE_VERSION = "1.2.0"; // x-release-please-version
2
+ export const PASEO_OMP_PACKAGE_VERSION = "1.3.0-next.227.1"; // x-release-please-version
@@ -49,7 +49,7 @@ const THINKING_OPTIONS: readonly ProviderThinkingOption[] = [
49
49
  { id: "xhigh", label: "XHigh", description: "Extra-high reasoning" },
50
50
  { id: "max", label: "Max", description: "Maximum reasoning" },
51
51
  ];
52
- export const OMP_MAX_CATALOG_MODELS = 256;
52
+ export const OMP_MAX_CATALOG_MODELS = 4096;
53
53
 
54
54
  export function selectOmpModels(
55
55
  models: readonly OmpModel[],
@@ -887,7 +887,7 @@ export class OmpRpcProcess {
887
887
  : isHistory
888
888
  ? 400_000
889
889
  : pending.command === "get_available_models"
890
- ? 16_384
890
+ ? 131_072
891
891
  : 2_048;
892
892
  const violation = jsonBoundViolation(
893
893
  boundedFrame,
@@ -5,7 +5,7 @@ import { OmpStoreSchema } from "./omp-store";
5
5
 
6
6
  const OMP_MODEL_TEXT_LIMIT = 256;
7
7
  const OMP_MODEL_SELECTOR_LIMIT = OMP_MODEL_TEXT_LIMIT * 2 + 1;
8
- const OMP_MODEL_LIST_LIMIT = 256;
8
+ const OMP_MODEL_LIST_LIMIT = 4_096;
9
9
  const OMP_MODEL_INPUT_LIMIT = 16;
10
10
  const OMP_THINKING_LEVEL_LIMIT = 16;
11
11
  const OMP_THINKING_LEVEL_TEXT_LIMIT = 32;