Skip to content
Draft
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
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@ __pycache__/
*.egg-info/
dist/
build/
!resources/dev/dream-server-desktop/build/
!resources/dev/dream-server-desktop/build/**

# Logs
*.log
Expand Down
1 change: 1 addition & 0 deletions .gitleaks.toml
Original file line number Diff line number Diff line change
Expand Up @@ -16,4 +16,5 @@
'''dream-server/installers/phases/06-directories\.sh''',
'''dream-server/installers/macos/lib/env-generator\.sh''',
'''dream-server/installers/windows/lib/env-generator\.ps1''',
'''resources/dev/dream-server-desktop/vendor/hermes-agent/tests/hermes_cli/test_plugins_cmd\.py''',
]
10 changes: 10 additions & 0 deletions resources/dev/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,16 @@ A lightweight Docker image containing everything needed to run the DreamServer i

Static HTML download page for `dreamserver.dev/download` (or equivalent). Auto-detects visitor's OS and shows the right installation command. Single-file, no dependencies, deploys anywhere.

### [`dream-server-desktop/`](dream-server-desktop/) — Electron Desktop Shell

Source-first Electron desktop build for Dream Server DESKTOP. It includes the
renderer, shared local runtime, Hermes Agent vendor source, CLI/gRPC entrypoints,
and cross-platform packaging scripts for Windows, Linux, and macOS.

Generated artifacts stay out of Git: `node_modules`, Electron `dist/` output,
Python virtual environments, downloaded standalone Python runtimes, GGUF models,
and machine-specific llama.cpp binaries.

### [`extensions-library/`](extensions-library/) — 33 Service Extensions

**The next wave of DreamServer services.** 17 extensions are already in production — these 33 are being tested for the next release.
Expand Down
22 changes: 22 additions & 0 deletions resources/dev/dream-server-desktop/.gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
* text=auto eol=lf
*.bat text eol=crlf
*.cmd text eol=crlf
*.ps1 text eol=crlf
*.png binary
*.jpg binary
*.jpeg binary
*.gif binary
*.ico binary
*.icns binary
*.mp4 binary
*.wav binary
*.ttf binary
*.woff binary
*.woff2 binary
*.asar binary
*.exe binary
*.dll binary
*.pak binary
*.dat binary
*.bin binary
bin/llama/** filter=lfs diff=lfs merge=lfs -text
51 changes: 51 additions & 0 deletions resources/dev/dream-server-desktop/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
node_modules/

# Electron/build outputs
dist/
dist-*/
out/
release/
.asar-rebuild/
.asar-rebuild-out/
.asar-rebuild-out-*/
builder-debug.yml
*.blockmap

# Local runtime binaries/models
models/
*.gguf
.venv-hermes/
bin/llama/

# Local state and logs
.tmp-preview-control.json
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*

# Legacy/extracted root copies that are not used by package.json
/core.js
/main.js
/renderer.js
/index.html
/styles.css
/rebuild-shader.cjs
/*-screen.png

# Python/cache artifacts
**/__pycache__/
*.py[cod]
*.pyo
.pytest_cache/
.ruff_cache/

# Local environment files
.env
.env.*
!.env.example

# Vendored source: keep full local vendor snapshots.
vendor/**/.git/
.vendor-git-backup/
91 changes: 91 additions & 0 deletions resources/dev/dream-server-desktop/PROVENANCE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
# Dream Server Desktop Provenance

This document records why third-party source lives under
`resources/dev/dream-server-desktop` and what is intentionally excluded from the
repository.

## Packaging Policy

The Electron app is built from the explicit `package.json` allowlist. Local
machine artifacts are excluded from Git and from the packaged app:

- `node_modules/`
- `.venv-hermes/`
- `bin/llama/`
- local models such as `*.gguf`
- generated Electron build outputs

Hermes Python dependencies are recreated with `npm run setup:hermes` after clone.
The local llama.cpp server is optional; users can place a compatible
`llama-server` under `bin/llama` or point Settings to any OpenAI-compatible
endpoint.

## Runtime Base

The desktop runtime is implemented in:

- `app-main.js`
- `preload.js`
- `src/`
- `runtime/`
- `scripts/`

The app integrates Hermes Agent through the bridge under `runtime/hermes`.

## Snapshot Source

This tree was refreshed from the local Dream Server Hermes workspace at
`C:\Users\Gabriel\Documents\Playground\dream-server-hermes` on 2026-05-09.

The vendored directories below are source snapshots used by this desktop
runtime. Their original `.git` metadata is not committed. Reference upstream
HEADs checked during this refresh:

- `https://github.com/NousResearch/hermes-agent.git`:
`f1f42a7b9ffa83749f725cfdf76b121779859914`
- `https://github.com/browser-use/browser-harness.git`:
`0e679e2c56bdc4add10befaada4674b85882e3a6`
- `https://github.com/sahaj-b/ghostty-cursor-shaders.git`:
`06d4e90fb5410e9c4d0b3131584060adddf89406`
- `https://github.com/KroneCorylus/ghostty-shader-playground.git`:
`7295ebf717f236f114912ec5de0d8ce91661448f`

If maintainers want byte-for-byte upstream traceability, this directory should
move to a submodule/subtree or artifact repository decision instead of a copied
snapshot.

## Vendored Source Records

### Hermes Agent

- Path: `vendor/hermes-agent`
- Upstream: `https://github.com/NousResearch/hermes-agent.git`
- License: MIT
- Role: local agent runtime and tool/provider reference used by `runtime/hermes`
- Packaging: included by the Electron build allowlist
- Notice: `THIRD_PARTY_NOTICES.md`

### Browser Harness

- Path: `vendor/browser-harness-upstream`
- Upstream: `https://github.com/browser-use/browser-harness.git`
- License: MIT
- Role: browser-harness-compatible support material for Workbench browser tooling
- Packaging: included by the Electron build allowlist
- Notice: `THIRD_PARTY_NOTICES.md`

### Hermes iOS Panel Plugin

- Path: `vendor/hermes-ios-panel-plugin`
- Source: local Dream Server Hermes plugin snapshot
- License: local plugin source
- Role: optional local plugin material used during desktop development
- Packaging: included by the Electron build allowlist

### Ghostty Shader References

- Sources: `https://github.com/sahaj-b/ghostty-cursor-shaders` and
`https://github.com/KroneCorylus/ghostty-shader-playground`
- Role: provenance for selected shader files copied under `src/shaders/ghostty`
- Packaging: only selected shader files under `src/shaders/ghostty`
- Notice: `THIRD_PARTY_NOTICES.md` and `src/shaders/ghostty/LICENSES.md`
Loading
Loading