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: DEVELOPER_GUIDE.md
+18-18Lines changed: 18 additions & 18 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,12 +1,12 @@
1
-
# Spex-Rust Developer Guide
1
+
# BootCode-Rust Developer Guide
2
2
3
-
This guide provides technical details for developing and troubleshooting the `spex-rust` plugin.
3
+
This guide provides technical details for developing and troubleshooting the `boot-rust` plugin.
4
4
5
5
---
6
6
7
7
## The Handshake Contract
8
8
9
-
`spex-core` discovers and communicates with plugins based on a simple contract:
9
+
`boot-core` discovers and communicates with plugins based on a simple contract:
10
10
11
11
-**First line on `stdout`**: Must be the handshake string in the format `1|1|tcp|HOST:PORT|grpc`.
12
12
-**All other output**: All logs, warnings, and errors **must** be sent to `stderr`. This keeps `stdout` clean so the handshake is not corrupted.
@@ -18,8 +18,8 @@ This guide provides technical details for developing and troubleshooting the `sp
18
18
You can quickly test that the binary is producing the correct handshake and that logs are properly sent to `stderr`.
19
19
20
20
```bash
21
-
# From the spex-rust project root, run the release binary and grab the first line of stdout
22
-
./target/release/spex-rust 2>/dev/null | head -1
21
+
# From the boot-rust project root, run the release binary and grab the first line of stdout
22
+
./target/release/boot-rust 2>/dev/null | head -1
23
23
```
24
24
25
25
**Expected Output:**
@@ -34,36 +34,36 @@ You can quickly test that the binary is producing the correct handshake and that
34
34
35
35
## Debugging Plugin Discovery
36
36
37
-
`spex-core` discovers the plugin by finding an executable named `spex-rust` on its `PATH`.
37
+
`boot-core` discovers the plugin by finding an executable named `boot-rust` on its `PATH`.
38
38
39
-
### Verify what `spex-core` Sees
39
+
### Verify what `boot-core` Sees
40
40
41
-
From the `spex-core` directory, run this command to see which `spex-rust` executable Poetry's environment will use:
41
+
From the `boot-core` directory, run this command to see which `boot-rust` executable Poetry's environment will use:
42
42
43
43
```bash
44
-
poetry run which -a spex-rust
44
+
poetry run which -a boot-rust
45
45
```
46
46
47
47
### Alternative: Running Without Installing
48
48
49
-
For rapid testing, you can run `spex-core` and temporarily add your local plugin build to the `PATH` for that single command:
49
+
For rapid testing, you can run `boot-core` and temporarily add your local plugin build to the `PATH` for that single command:
50
50
51
51
```bash
52
-
# Run this from the spex-core directory
53
-
poetry run env PATH="/path/to/your/spex-rust/target/release:$PATH" \
54
-
spex generate my_rust_spec.toml
52
+
# Run this from the boot-core directory
53
+
poetry run env PATH="/path/to/your/boot-rust/target/release:$PATH" \
54
+
boot generate my_rust_spec.toml
55
55
```
56
56
57
57
### Removing Stale Binaries
58
58
59
-
If `which spex-rust` points to an old version, remove it:
59
+
If `which boot-rust` points to an old version, remove it:
60
60
61
61
```bash
62
62
# If installed via cargo
63
-
cargo uninstall spex-rust
63
+
cargo uninstall boot-rust
64
64
65
65
# Or remove a manually copied file
66
-
rm -f ~/.cargo/bin/spex-rust
66
+
rm -f ~/.cargo/bin/boot-rust
67
67
68
68
# Clear the shell's command cache
69
69
hash -r
@@ -79,8 +79,8 @@ hash -r
79
79
80
80
---
81
81
82
-
## Common `spex-core` Errors
82
+
## Common `boot-core` Errors
83
83
84
-
-**`Plugin executable not found`**: This is a `PATH` issue. `spex-core` cannot find the `spex-rust` binary. Ensure you have run `cargo install --path . --force` and that `~/.cargo/bin` is in your shell's `PATH`.
84
+
-**`Plugin executable not found`**: This is a `PATH` issue. `boot-core` cannot find the `boot-rust` binary. Ensure you have run `cargo install --path . --force` and that `~/.cargo/bin` is in your shell's `PATH`.
85
85
86
86
-**`Invalid handshake` / `not enough values to unpack`**: This means the plugin wrote something to `stdout` before the handshake string. Use the "Testing the Binary" command above to verify the output is clean.
This Rust application is a lightweight gRPC server that serves language-specific prompt components to `spex-core`. Its sole responsibility is to provide the building blocks that the core application uses to construct high-quality prompts for generating Rust code.
5
+
This Rust application is a lightweight gRPC server that serves language-specific prompt components to `boot-core`. Its sole responsibility is to provide the building blocks that the core application uses to construct high-quality prompts for generating Rust code.
6
6
7
-
-**Handshake (stdout)**: Prints a single handshake line required by `spex-core` to establish a connection.
7
+
-**Handshake (stdout)**: Prints a single handshake line required by `boot-core` to establish a connection.
8
8
-**Logs (stderr)**: All logging is directed to stderr to keep stdout clean.
9
9
-**Prompts**: All prompt logic is contained in simple text files within the `/prompts` directory.
10
10
@@ -21,20 +21,20 @@ This Rust application is a lightweight gRPC server that serves language-specific
21
21
cargo build --release
22
22
```
23
23
24
-
### Install for `spex-core`:
24
+
### Install for `boot-core`:
25
25
26
-
To make the `spex-rust` executable discoverable by `spex-core`, install it to your cargo binary path.
26
+
To make the `boot-rust` executable discoverable by `boot-core`, install it to your cargo binary path.
0 commit comments