You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/architecture/overview.md
+13-13Lines changed: 13 additions & 13 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -17,7 +17,7 @@ The current command architecture uses explicit vertical command slices under `sr
17
17
## Major runtime parts
18
18
19
19
### 1. OpenCode plugin entrypoint
20
-
Represented by `src/plugin.ts`, exported from the package at `./plugin`, and consumed by repositories through the `opencode.json``plugin` array.
20
+
Represented by `src/opencode/plugin.ts`, with OpenCode-specific caller resolution in `src/opencode/context.ts` and tool execution in `src/opencode/tool.ts`, exported from the package at `./plugin`, and consumed by repositories through the `opencode.json``plugin` array.
21
21
22
22
Responsibilities:
23
23
- expose the `orfe` tool through `OrfePlugin`
@@ -30,7 +30,7 @@ It must not:
30
30
- pass raw OpenCode runtime objects into the core
31
31
32
32
### 2. CLI entrypoint
33
-
Represented by `src/cli.ts`and `src/command.ts`.
33
+
Represented by `src/cli/entrypoint.ts`, `src/cli/run.ts`, `src/cli/parse.ts`, `src/cli/help.ts`, and `src/cli/types.ts`.
34
34
35
35
Responsibilities:
36
36
- support commandless invocation as a help/noop path
@@ -42,7 +42,7 @@ Responsibilities:
42
42
The CLI is intentionally a thin adapter. It renders root, group, and leaf help from the registered command catalog rather than maintaining a separate hardcoded command map.
43
43
44
44
### 3. Core runtime
45
-
Represented by `src/core.ts` plus the command catalog under `src/commands/`.
45
+
Represented by `src/core/run.ts`, `src/core/context.ts`, `src/core/types.ts`, plus the command catalog under `src/commands/`.
46
46
47
47
Responsibilities:
48
48
- load repo-local config
@@ -55,10 +55,10 @@ Responsibilities:
55
55
- return structured success or typed errors
56
56
57
57
The core is runtime-agnostic and must remain callable from both CLI and plugin entrypoints.
58
-
It is also the future extension host, but it must preserve the same wrapper/core and plain-data boundaries while doing so.
58
+
It is also the future extension host, but it must preserve the same OpenCode tool/core and plain-data boundaries while doing so.
59
59
60
60
### 4. Config layer
61
-
Current examples include `src/config.ts` and `.orfe/config.json`.
61
+
Current examples include `src/config/repo-config.ts`, `src/config/auth-config.ts`, `src/config/project-defaults.ts`, `src/config/repository-ref.ts`, `src/config/shared.ts`, and `.orfe/config.json`.
62
62
63
63
Responsibilities:
64
64
- hold repo-local non-secret configuration
@@ -81,15 +81,15 @@ Responsibilities:
81
81
- stay below repository workflow policy rather than interpreting ownership or orchestration semantics
82
82
83
83
### 6. Auth layer
84
-
Current examples include `src/github.ts` and machine-local auth config.
84
+
Current examples include `src/github/installation-auth.ts`, `src/github/jwt.ts`, and machine-local auth config.
0 commit comments