Commit graph

16 commits

Author SHA1 Message Date
Wael Nasreddine
eec72f1278
launchd: wait for /nix/store before starting agent (#8609)
On Darwin, launchd may attempt to start agents before the Nix store is
mounted and available. This leads to failures when the agent's executable
or arguments reside in the Nix store.

This change wraps the agent's command in a shell script that uses
/bin/wait4path to ensure /nix/store is ready before executing the
original program. It also ensures that ProgramArguments are correctly
escaped and concatenated.
2026-01-27 21:51:48 -08:00
Mirza Arnaut
63ecc7d495 opencode: handle string store paths in skill sources
Add support for store directory paths provided as strings, in addition
to the existing path type check for directories.
Context: certain project will include a `SKILL.md` file, and instead of
managing them via some 3rd party manager or manually, why not include
them from the source itself! I implemented this in my setup, since I
wanted to include the `SKILL.md` file from the
[beads](https://github.com/steveyegge/beads) project.
2026-01-25 15:50:05 -06:00
Mirza Arnaut
d9da6e6457 opencode: add web service configuration
Add configuration options for the opencode web service including host,
port, mDNS, logging, and CORS settings. Implement systemd user service
to run the web server with configurable parameters.
2026-01-25 15:46:27 -06:00
Jairo Llopis
082a4cd87c opencode: fix config file location
Some checks failed
/ triage (push) Has been cancelled
GitHub Pages / publish (ubuntu-latest) (push) Has been cancelled
The file should be named `opencode.json`, not `config.json`.

Docs: https://opencode.ai/docs/config/#global

@moduon MT-13030
2026-01-23 10:55:49 -06:00
Thierry Delafontaine
b1b1c68033 opencode: add custom tools support
Adds support for custom tools - user-defined functions that the LLM can
call during conversations. Custom tools work alongside opencode's built-in
tools and are configured through the new `tools` option.

The configuration follows the same pattern as other opencode settings like
`agents` and `commands`, supporting:
- Inline TypeScript content
- Individual file paths
- Bulk directory imports
2026-01-08 16:32:29 -05:00
Thierry Delafontaine
081234b704 opencode: support directory-based configuration for commands, agents, and themes
The `commands`, `agents`, and `themes` options now accept either an
attribute set (existing behavior) or a path to a directory containing
multiple files. When a directory path is provided, it is symlinked to
the appropriate `$XDG_CONFIG_HOME/opencode/` subdirectory.

This change aligns with the existing `skills` option implementation and
provides a more convenient way to manage multiple configuration files
without needing to define each one individually in Nix.
2026-01-08 16:32:29 -05:00
Tim Kleinschmidt
1cfa305fba opencode: add agent skills support
Adds support for OpenCode Agent Skills by managing skill definitions
under "/opencode/skill/<name>/SKILL.md" via `programs.opencode.skills`.

Documentation: https://opencode.ai/docs/skills/
2026-01-03 11:47:20 +01:00
Thierry Delafontaine
c740351870 opencode: add mcp module integration 2025-11-03 20:25:16 -06:00
Thierry Delafontaine
6ea30b26cd opencode: make the themes also accept path
- Removed unnecessary empty-themes test.
2025-10-19 09:47:26 -05:00
Thierry Delafontaine
fddb33a1a5 opencode: make the rules option also accept a path 2025-10-19 09:47:26 -05:00
Mirza Arnaut
fc837be107 opencode: add themes option
Add themes option to configure custom themes through nix.
Define a submodule for the settings option, to give the `theme` setting
a description.
2025-10-18 09:21:38 -05:00
Austin Horstman
53538044d9 tests/opencode: expand tests for agents / commands
Include various tests for the agents and command file generation and
different ways of configuring it.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-09-17 07:23:42 -05:00
Thierry Delafontaine
64796151f7 opencode: add JSON schema reference to config.json output
- Automatically include "$schema": "https://opencode.ai/config.json" in the generated
  opencode config.json file
- Update documentation to mention the added schema property
- Add corresponding "$schema" entry in test config.json file for validation purposes

Closes #7506
2025-07-24 11:05:45 -05:00
Thierry Delafontaine
1df662dde0 opencode: add empty-settings test
- Add `empty-settings` test to ensure the config file is not generated
  when no settings are provided
2025-07-24 11:05:45 -05:00
Thierry Delafontaine
08edcbe9df opencode: add support for global custom instructions via rules option
- Introduce `rules` option to provide global custom instructions for opencode
- Write `rules` content to `~/.config/opencode/AGENTS.md` if non-empty
- Update tests to cover presence and absence of `AGENTS.md` file with rules content
2025-07-24 11:05:45 -05:00
Thierry Delafontaine
5a49fe448e
opencode: init (#7320) 2025-07-05 16:02:49 -05:00