Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions packages/effect-acp/src/agent.ts
Original file line number Diff line number Diff line change
Expand Up @@ -254,6 +254,7 @@ interface AcpCoreAgentRequestHandlers {

const decodeCancelNotification = Schema.decodeUnknownEffect(AcpSchema.CancelNotification);

/** @public Service construction is part of the canonical Effect module API. */
export const make = Effect.fn("effect-acp/AcpAgent.make")(function* (
stdio: Stdio.Stdio,
options: AcpAgentOptions = {},
Expand Down
5 changes: 0 additions & 5 deletions packages/effect-acp/src/client.ts
Original file line number Diff line number Diff line change
Expand Up @@ -585,11 +585,6 @@ export const make = Effect.fn("effect-acp/AcpClient.make")(function* (
});
});

export const layer = (
stdio: AcpProtocol.AcpStdio,
options: AcpClientOptions = {},
): Layer.Layer<AcpClient> => Layer.effect(AcpClient, make(stdio, options));

export const layerChildProcess = (
handle: ChildProcessSpawner.ChildProcessHandle,
options: AcpClientOptions = {},
Expand Down
10 changes: 5 additions & 5 deletions packages/effect-acp/src/errors.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,20 +3,20 @@ import type * as SchemaIssue from "effect/SchemaIssue";

import * as AcpSchema from "./_generated/schema.gen.ts";

export const AcpRequestOperation = Schema.Literals([
const AcpRequestOperation = Schema.Literals([
"decode-extension-request-payload",
"encode-extension-response",
"handle-request",
"handle-extension-request",
"receive-response",
"receive-streaming-response",
]);
export type AcpRequestOperation = typeof AcpRequestOperation.Type;
type AcpRequestOperation = typeof AcpRequestOperation.Type;

export const AcpRequestId = Schema.Union([Schema.String, Schema.Number]);
export type AcpRequestId = typeof AcpRequestId.Type;

export const AcpSchemaIssueKind = Schema.Literals([
const AcpSchemaIssueKind = Schema.Literals([
"Filter",
"Encoding",
"Pointer",
Expand All @@ -29,9 +29,9 @@ export const AcpSchemaIssueKind = Schema.Literals([
"Forbidden",
"OneOf",
]);
export type AcpSchemaIssueKind = typeof AcpSchemaIssueKind.Type;
type AcpSchemaIssueKind = typeof AcpSchemaIssueKind.Type;

export interface AcpSchemaIssueDiagnostics {
interface AcpSchemaIssueDiagnostics {
readonly issueCount: number;
readonly issueKinds: ReadonlyArray<AcpSchemaIssueKind>;
readonly maximumPathDepth: number;
Expand Down
42 changes: 21 additions & 21 deletions packages/effect-acp/src/rpc.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,127 +4,127 @@ import * as RpcGroup from "effect/unstable/rpc/RpcGroup";
import * as AcpSchema from "./_generated/schema.gen.ts";
import { AGENT_METHODS, CLIENT_METHODS } from "./_generated/meta.gen.ts";

export const InitializeRpc = Rpc.make(AGENT_METHODS.initialize, {
const InitializeRpc = Rpc.make(AGENT_METHODS.initialize, {
payload: AcpSchema.InitializeRequest,
success: AcpSchema.InitializeResponse,
error: AcpSchema.Error,
});

export const AuthenticateRpc = Rpc.make(AGENT_METHODS.authenticate, {
const AuthenticateRpc = Rpc.make(AGENT_METHODS.authenticate, {
payload: AcpSchema.AuthenticateRequest,
success: AcpSchema.AuthenticateResponse,
error: AcpSchema.Error,
});

export const LogoutRpc = Rpc.make(AGENT_METHODS.logout, {
const LogoutRpc = Rpc.make(AGENT_METHODS.logout, {
payload: AcpSchema.LogoutRequest,
success: AcpSchema.LogoutResponse,
error: AcpSchema.Error,
});

export const NewSessionRpc = Rpc.make(AGENT_METHODS.session_new, {
const NewSessionRpc = Rpc.make(AGENT_METHODS.session_new, {
payload: AcpSchema.NewSessionRequest,
success: AcpSchema.NewSessionResponse,
error: AcpSchema.Error,
});

export const LoadSessionRpc = Rpc.make(AGENT_METHODS.session_load, {
const LoadSessionRpc = Rpc.make(AGENT_METHODS.session_load, {
payload: AcpSchema.LoadSessionRequest,
success: AcpSchema.LoadSessionResponse,
error: AcpSchema.Error,
});

export const ListSessionsRpc = Rpc.make(AGENT_METHODS.session_list, {
const ListSessionsRpc = Rpc.make(AGENT_METHODS.session_list, {
payload: AcpSchema.ListSessionsRequest,
success: AcpSchema.ListSessionsResponse,
error: AcpSchema.Error,
});

export const ForkSessionRpc = Rpc.make(AGENT_METHODS.session_fork, {
const ForkSessionRpc = Rpc.make(AGENT_METHODS.session_fork, {
payload: AcpSchema.ForkSessionRequest,
success: AcpSchema.ForkSessionResponse,
error: AcpSchema.Error,
});

export const ResumeSessionRpc = Rpc.make(AGENT_METHODS.session_resume, {
const ResumeSessionRpc = Rpc.make(AGENT_METHODS.session_resume, {
payload: AcpSchema.ResumeSessionRequest,
success: AcpSchema.ResumeSessionResponse,
error: AcpSchema.Error,
});

export const CloseSessionRpc = Rpc.make(AGENT_METHODS.session_close, {
const CloseSessionRpc = Rpc.make(AGENT_METHODS.session_close, {
payload: AcpSchema.CloseSessionRequest,
success: AcpSchema.CloseSessionResponse,
error: AcpSchema.Error,
});

export const PromptRpc = Rpc.make(AGENT_METHODS.session_prompt, {
const PromptRpc = Rpc.make(AGENT_METHODS.session_prompt, {
payload: AcpSchema.PromptRequest,
success: AcpSchema.PromptResponse,
error: AcpSchema.Error,
});

export const SetSessionModelRpc = Rpc.make(AGENT_METHODS.session_set_model, {
const SetSessionModelRpc = Rpc.make(AGENT_METHODS.session_set_model, {
payload: AcpSchema.SetSessionModelRequest,
success: AcpSchema.SetSessionModelResponse,
error: AcpSchema.Error,
});

export const SetSessionConfigOptionRpc = Rpc.make(AGENT_METHODS.session_set_config_option, {
const SetSessionConfigOptionRpc = Rpc.make(AGENT_METHODS.session_set_config_option, {
payload: AcpSchema.SetSessionConfigOptionRequest,
success: AcpSchema.SetSessionConfigOptionResponse,
error: AcpSchema.Error,
});

export const ReadTextFileRpc = Rpc.make(CLIENT_METHODS.fs_read_text_file, {
const ReadTextFileRpc = Rpc.make(CLIENT_METHODS.fs_read_text_file, {
payload: AcpSchema.ReadTextFileRequest,
success: AcpSchema.ReadTextFileResponse,
error: AcpSchema.Error,
});

export const WriteTextFileRpc = Rpc.make(CLIENT_METHODS.fs_write_text_file, {
const WriteTextFileRpc = Rpc.make(CLIENT_METHODS.fs_write_text_file, {
payload: AcpSchema.WriteTextFileRequest,
success: AcpSchema.WriteTextFileResponse,
error: AcpSchema.Error,
});

export const RequestPermissionRpc = Rpc.make(CLIENT_METHODS.session_request_permission, {
const RequestPermissionRpc = Rpc.make(CLIENT_METHODS.session_request_permission, {
payload: AcpSchema.RequestPermissionRequest,
success: AcpSchema.RequestPermissionResponse,
error: AcpSchema.Error,
});

export const ElicitationRpc = Rpc.make(CLIENT_METHODS.session_elicitation, {
const ElicitationRpc = Rpc.make(CLIENT_METHODS.session_elicitation, {
payload: AcpSchema.ElicitationRequest,
success: AcpSchema.ElicitationResponse,
error: AcpSchema.Error,
});

export const CreateTerminalRpc = Rpc.make(CLIENT_METHODS.terminal_create, {
const CreateTerminalRpc = Rpc.make(CLIENT_METHODS.terminal_create, {
payload: AcpSchema.CreateTerminalRequest,
success: AcpSchema.CreateTerminalResponse,
error: AcpSchema.Error,
});

export const TerminalOutputRpc = Rpc.make(CLIENT_METHODS.terminal_output, {
const TerminalOutputRpc = Rpc.make(CLIENT_METHODS.terminal_output, {
payload: AcpSchema.TerminalOutputRequest,
success: AcpSchema.TerminalOutputResponse,
error: AcpSchema.Error,
});

export const ReleaseTerminalRpc = Rpc.make(CLIENT_METHODS.terminal_release, {
const ReleaseTerminalRpc = Rpc.make(CLIENT_METHODS.terminal_release, {
payload: AcpSchema.ReleaseTerminalRequest,
success: AcpSchema.ReleaseTerminalResponse,
error: AcpSchema.Error,
});

export const WaitForTerminalExitRpc = Rpc.make(CLIENT_METHODS.terminal_wait_for_exit, {
const WaitForTerminalExitRpc = Rpc.make(CLIENT_METHODS.terminal_wait_for_exit, {
payload: AcpSchema.WaitForTerminalExitRequest,
success: AcpSchema.WaitForTerminalExitResponse,
error: AcpSchema.Error,
});

export const KillTerminalRpc = Rpc.make(CLIENT_METHODS.terminal_kill, {
const KillTerminalRpc = Rpc.make(CLIENT_METHODS.terminal_kill, {
payload: AcpSchema.KillTerminalRequest,
success: AcpSchema.KillTerminalResponse,
error: AcpSchema.Error,
Expand Down
Loading