@opencode-ai/protocol 0.0.0-next-16909 → 0.0.0-next-16926

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/api.d.ts CHANGED
@@ -32,7 +32,8 @@ import { ProjectGroup } from "./groups/project.js";
32
32
  import { ProjectCopyGroup } from "./groups/project-copy.js";
33
33
  import { VcsGroup } from "./groups/vcs.js";
34
34
  import { MigrationGroup } from "./groups/migration.js";
35
- type LocationGroups<LocationId extends HttpApiMiddleware.AnyId> = HttpApiGroup.AddMiddleware<typeof LocationGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof AgentGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof PluginGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof ModelGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof GenerateGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof ProviderGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof IntegrationGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof WebSearchGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof McpGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof CredentialGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof ProjectGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof FileSystemGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof CommandGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof SkillGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof PtyGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof ShellGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof ReferenceGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof ProjectCopyGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof VcsGroup, LocationId>;
35
+ import { ConfigGroup } from "./groups/config.js";
36
+ type LocationGroups<LocationId extends HttpApiMiddleware.AnyId> = HttpApiGroup.AddMiddleware<typeof LocationGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof AgentGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof PluginGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof ModelGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof GenerateGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof ProviderGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof IntegrationGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof WebSearchGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof McpGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof CredentialGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof ProjectGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof FileSystemGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof CommandGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof SkillGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof PtyGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof ShellGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof ReferenceGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof ProjectCopyGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof VcsGroup, LocationId> | HttpApiGroup.AddMiddleware<typeof ConfigGroup, LocationId>;
36
37
  type SessionGroups<SessionLocationId extends HttpApiMiddleware.AnyId, SessionLocationService> = ReturnType<typeof makeSessionGroup<SessionLocationId, SessionLocationService>> | typeof MessageGroup;
37
38
  type FormGroups<LocationId extends HttpApiMiddleware.AnyId, LocationService, FormLocationId extends HttpApiMiddleware.AnyId, FormLocationService> = ReturnType<typeof makeFormGroup<LocationId, LocationService, FormLocationId, FormLocationService>>;
38
39
  type MixedMiddlewareGroups<LocationId extends HttpApiMiddleware.AnyId, LocationService, SessionLocationId extends HttpApiMiddleware.AnyId, SessionLocationService> = ReturnType<typeof makePermissionGroup<LocationId, LocationService, SessionLocationId, SessionLocationService>> | ReturnType<typeof makeQuestionGroup<LocationId, LocationService, SessionLocationId, SessionLocationService>>;
package/dist/api.js CHANGED
@@ -31,6 +31,7 @@ import { ProjectGroup } from "./groups/project.js";
31
31
  import { ProjectCopyGroup } from "./groups/project-copy.js";
32
32
  import { VcsGroup } from "./groups/vcs.js";
33
33
  import { MigrationGroup } from "./groups/migration.js";
34
+ import { ConfigGroup } from "./groups/config.js";
34
35
  // Protocol owns middleware placement, while Server injects concrete keys so Core service identities stay downstream.
35
36
  const makeApiFromGroup = (eventGroup, locationMiddleware, formLocationMiddleware, sessionLocationMiddleware) => HttpApi.make("server")
36
37
  .add(HealthGroup)
@@ -62,6 +63,7 @@ const makeApiFromGroup = (eventGroup, locationMiddleware, formLocationMiddleware
62
63
  .add(DebugGroup)
63
64
  .add(MigrationGroup)
64
65
  .add(WebSearchGroup.middleware(locationMiddleware))
66
+ .add(ConfigGroup.middleware(locationMiddleware))
65
67
  .annotateMerge(OpenApi.annotations({
66
68
  title: "opencode HttpApi",
67
69
  version: "0.0.1",
package/dist/client.d.ts CHANGED
@@ -55,6 +55,7 @@ export declare const groupNames: {
55
55
  readonly "server.project": "project";
56
56
  readonly "server.projectCopy": "projectCopy";
57
57
  readonly "server.vcs": "vcs";
58
+ readonly "server.config": "config";
58
59
  };
59
60
  export declare const promiseOmitEndpoints: Set<string>;
60
61
  export declare const effectOmitEndpoints: Set<string>;
package/dist/client.js CHANGED
@@ -42,6 +42,7 @@ export const groupNames = {
42
42
  "server.project": "project",
43
43
  "server.projectCopy": "projectCopy",
44
44
  "server.vcs": "vcs",
45
+ "server.config": "config",
45
46
  };
46
47
  export const promiseOmitEndpoints = new Set(["pty.connect", "pty.connectToken"]);
47
48
  export const effectOmitEndpoints = new Set(["fs.read", "pty.connect", "pty.connectToken"]);
@@ -0,0 +1,9 @@
1
+ import { Config } from "@opencode-ai/schema/config";
2
+ import { Schema } from "effect";
3
+ import { HttpApiEndpoint, HttpApiGroup } from "effect/unstable/httpapi";
4
+ export declare const ConfigGroup: HttpApiGroup.HttpApiGroup<"server.config", HttpApiEndpoint.HttpApiEndpoint<"config.get", "GET", "/api/config", never, Schema.toCodecStringTree<Schema.Struct<{
5
+ readonly location: Schema.optional<Schema.Struct<{
6
+ readonly directory: Schema.optional<Schema.String>;
7
+ readonly workspace: Schema.optional<Schema.String>;
8
+ }>>;
9
+ }>>, never, never, Schema.toCodecJson<Schema.$Array<Schema.Union<readonly [typeof Config.Document, typeof Config.Directory, typeof Config.File, typeof Config.AgentsDirectory, typeof Config.ClaudeDirectory]>>>, never, never, never>, false>;
@@ -0,0 +1,16 @@
1
+ import { Config } from "@opencode-ai/schema/config";
2
+ import { Schema } from "effect";
3
+ import { HttpApiEndpoint, HttpApiGroup, OpenApi } from "effect/unstable/httpapi";
4
+ import { LocationQuery, locationQueryOpenApi } from "./location.js";
5
+ export const ConfigGroup = HttpApiGroup.make("server.config")
6
+ .add(HttpApiEndpoint.get("config.get", "/api/config", {
7
+ query: LocationQuery,
8
+ success: Schema.Array(Config.Entry),
9
+ })
10
+ .annotateMerge(locationQueryOpenApi)
11
+ .annotateMerge(OpenApi.annotations({
12
+ identifier: "v2.config.get",
13
+ summary: "Get configuration",
14
+ description: "Return configuration documents and discovery sources for the requested location, from lowest to highest priority.",
15
+ })))
16
+ .annotateMerge(OpenApi.annotations({ title: "config", description: "Location-scoped configuration routes." }));
@@ -6906,6 +6906,18 @@ export declare const EventGroup: HttpApiGroup.HttpApiGroup<"server.event", HttpA
6906
6906
  readonly metadata?: {
6907
6907
  readonly [x: string]: unknown;
6908
6908
  } | undefined;
6909
+ } | {
6910
+ readonly id: string & import("effect/Brand").Brand<"Event.ID">;
6911
+ readonly data: {};
6912
+ readonly type: "websearch.updated";
6913
+ readonly created: import("effect/DateTime").Utc;
6914
+ readonly location?: {
6915
+ readonly directory: string & import("effect/Brand").Brand<"AbsolutePath">;
6916
+ readonly workspaceID?: (string & import("effect/Brand").Brand<"Workspace.ID">) | undefined;
6917
+ } | undefined;
6918
+ readonly metadata?: {
6919
+ readonly [x: string]: unknown;
6920
+ } | undefined;
6909
6921
  } | {
6910
6922
  readonly id: string & import("effect/Brand").Brand<"Event.ID">;
6911
6923
  readonly data: {};
@@ -7292,18 +7304,6 @@ export declare const EventGroup: HttpApiGroup.HttpApiGroup<"server.event", HttpA
7292
7304
  readonly metadata?: {
7293
7305
  readonly [x: string]: unknown;
7294
7306
  } | undefined;
7295
- } | {
7296
- readonly id: string & import("effect/Brand").Brand<"Event.ID">;
7297
- readonly data: {};
7298
- readonly type: "websearch.updated";
7299
- readonly created: import("effect/DateTime").Utc;
7300
- readonly location?: {
7301
- readonly directory: string & import("effect/Brand").Brand<"AbsolutePath">;
7302
- readonly workspaceID?: (string & import("effect/Brand").Brand<"Workspace.ID">) | undefined;
7303
- } | undefined;
7304
- readonly metadata?: {
7305
- readonly [x: string]: unknown;
7306
- } | undefined;
7307
7307
  } | {
7308
7308
  readonly id: string & import("effect/Brand").Brand<"Event.ID">;
7309
7309
  readonly data: {};
@@ -23,9 +23,6 @@ export declare const McpGroup: HttpApiGroup.HttpApiGroup<"server.mcp", HttpApiEn
23
23
  readonly error: Schema.String;
24
24
  }>, Schema.Struct<{
25
25
  readonly status: Schema.Literal<"needs_auth">;
26
- }>, Schema.Struct<{
27
- readonly status: Schema.Literal<"needs_client_registration">;
28
- readonly error: Schema.String;
29
26
  }>]>;
30
27
  readonly integrationID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Integration.ID">>>, Schema.optionalKey<Schema.brand<Schema.String, "Integration.ID">>, never, never>;
31
28
  }>>;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/package.json",
3
3
  "name": "@opencode-ai/protocol",
4
- "version": "0.0.0-next-16909",
4
+ "version": "0.0.0-next-16926",
5
5
  "type": "module",
6
6
  "license": "MIT",
7
7
  "repository": {
@@ -28,7 +28,7 @@
28
28
  "typecheck": "tsgo --noEmit"
29
29
  },
30
30
  "dependencies": {
31
- "@opencode-ai/schema": "0.0.0-next-16909",
31
+ "@opencode-ai/schema": "0.0.0-next-16926",
32
32
  "effect": "4.0.0-beta.101"
33
33
  },
34
34
  "devDependencies": {