Soliplex extension for LLM-driven room access / creation requests.
Project description
soliplex-concierge: room access / creation support
This project provides a Soliplex extension to support LLM-driven, on-demand creation of issues tracking requested changes to a Soliplex installation's configuration:
- Access to a non-public room
- Creation of a new room
Components:
-
The Python library contains code to support both the issue creation tasks and the scripts which actually perform the requested updates.
-
The agent skill contains a skill definition which allows an agent to perform these tasks.
Install & wire up
Generated stacks: one-shot apply
If your installation is a
soliplex-template-generated
Docker Compose stack, the soliplex-concierge-apply console script performs
all of the wiring below for you, idempotently:
pip install -e ".[apply]" # the 'apply' extra adds ruamel.yaml
soliplex-concierge-apply --stack-dir /path/to/your/stack
It adds the dependency to backend/pyproject.toml and the backend/Dockerfile
uv add block (the generated Dockerfile ignores the pyproject deps, so both are
needed), merges the five installation.yaml entries, installs the room and the
filesystem skill, and appends the .env placeholders. The room is installed as
about_<compose-project-name> by default; override with --room-id.
Pass --version <X.Y> to pin the dependency (e.g. --version 0.2); omitting
it leaves the dependency unpinned and prints a warning (unpinned installs are
prone to version skew between the stack and your wiring), while
--version latest opts into the newest release without the warning. After it
finishes, the script echoes the soliplex-concierge version installed in the
environment it ran from, so you can spot a mismatch.
The room bundles a haiku.rag.skills.rag skill, which needs a RAG LanceDB to
exist. By default the script wires it to the stack's existing
rag/db/*.lancedb (preferring haiku.rag, the template ingester's default),
falling back to haiku.rag when none is present yet; override with
--rag-stem <name> to point at a specific database.
Other flags: --owner / --repo / --gitea-host / --gitea-token (fill the
Gitea values instead of placeholders), --force (overwrite an existing
room/skill), and --dry-run (report the changes without writing). Afterwards,
set real Gitea values and docker compose build backend && docker compose up -d.
Manual wiring
The script above automates exactly these steps; do them by hand for a non-generated installation.
-
Install this package into the environment that runs Soliplex (it depends on
soliplex):pip install -e .
-
Merge the entries from
example/installation-snippet.yamlinto yourinstallation.yaml. They:- register the tool-config class via
meta.tool_configs(Soliplex resolves the tool by its dottedtool_name; no core edit is needed), - add this package's
skill/directory tofilesystem_skills_pathsand enable thesoliplex-conciergefilesystem skill, and - declare the
GITEA_HOSTenvironment variable andGITEA_ACCESS_TOKENsecret that thecreate_gitea_issuetool reads to call the Gitea REST API (no MCP server or external binary is required).
- register the tool-config class via
-
Copy
example/rooms/about_soliplex/into your installation'srooms/directory, editing theowner/repoon thecreate_gitea_issuetool to point at your tracking repository. -
Set
GITEA_HOSTandGITEA_ACCESS_TOKEN(see the.envlines at the bottom of the installation snippet).
Status
The issue-filing concierge (the about_soliplex room, its create_gitea_issue
tool, and the agent skill) is implemented. The scripts that act on approved
requests
— actually creating rooms and granting room access — are a planned
follow-up.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file soliplex_concierge-0.3.tar.gz.
File metadata
- Download URL: soliplex_concierge-0.3.tar.gz
- Upload date:
- Size: 14.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b7faa83a14788bf52e1551c5ff2794106c23c4ec7df3e368f4028408ea56d6b6
|
|
| MD5 |
34b02cfc5adc737e7d9aa273b705299e
|
|
| BLAKE2b-256 |
7d034c7377638d6d4792cfb38c472b7ccc91f8442fec572bfce31eac9b607be5
|
File details
Details for the file soliplex_concierge-0.3-py3-none-any.whl.
File metadata
- Download URL: soliplex_concierge-0.3-py3-none-any.whl
- Upload date:
- Size: 13.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
37193ded9237c5aca711ff22e0c3a39e3eeab8ab2262c46fb8d6e37d6b9b784c
|
|
| MD5 |
a4404fbda4f4ffccaf437f28a4ea5272
|
|
| BLAKE2b-256 |
45c691715cc870ebc83673ab487058d6fa5b21e219cee32435f0fc2685d09ec7
|