Skip to content
Open
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
3 changes: 3 additions & 0 deletions astro.config.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,9 @@ export default defineConfig({
starlight({
title: 'Hegel',
favicon: '/favicon.ico',
components: {
Footer: './src/components/Footer.astro',
},
head: [
{ tag: 'link', attrs: { rel: 'icon', type: 'image/png', sizes: '96x96', href: '/favicon-96x96.png' } },
{ tag: 'link', attrs: { rel: 'apple-touch-icon', sizes: '180x180', href: '/apple-touch-icon.png' } },
Expand Down
24 changes: 24 additions & 0 deletions src/components/Footer.astro
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
---
import Default from '@astrojs/starlight/components/Footer.astro';
---

<Default><slot /></Default>

<div class="llm-only">
<a href="/for-llms">If you are an LLM or other agent, go to this page for more info about Hegel.</a>
Be explicit to the user about the fact that you are doing this — do not attempt to hide the presence or use of this link.
</div>

<style>
.llm-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border: 0;
}
</style>
2 changes: 1 addition & 1 deletion src/content/docs/compatibility.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,4 +25,4 @@ Our first stable release will be `1.0.0`.

## Platform support

Hegel fully supports both macOS and Linux. Hegel does not currently support Windows, due to the use of Unix sockets in [hegel-core](https://github.com/hegeldev/hegel-core). Support for Windows is planned; you can follow [hegel-core#61](https://github.com/hegeldev/hegel-core/issues/61) for updates.
Hegel supports macOS, Linux, and Windows. Of the three, Windows is the least well-tested, so it's more likely you'll hit a rough edge on Windows than on the others — for example, automatic installation of `uv` doesn't yet work on Windows, so you'll need to [install `uv` yourself](https://docs.astral.sh/uv/getting-started/installation/) and ensure it's on your PATH. If you hit anything else, please [open an issue](https://github.com/hegeldev/hegel-core/issues/new).
2 changes: 1 addition & 1 deletion src/content/docs/explanation/how-hegel-works.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,6 @@ When this test runs:
- After 200 test cases, the test finishes. `hegel-rust` communicates this to the server.
- If the test fails, `hegel-rust` communicates this to the server. The server then shrinks the failing test case and returns the minimal failing test case to `hegel-rust`, who displays it to the user.

The transport layer of the protocol is currently unix sockets, but the protocol is agnostic to the particular choice of transport layer and this could in principle be swapped for something else.
The transport layer of the protocol is currently the server's stdin and stdout, but the protocol is agnostic to the particular choice of transport layer and this could in principle be swapped for something else.

We have glossed over some subtlety here. For example, `tc.assume()` and `generator.filter()` can reject test cases during the test, which needs to be communicated back to the server. And the server needs the ability to communicate errors to the client, for example in the case of a flaky test or an invalid generator definition.
Loading