Skip to content

docs(projects): add TeslaMate LLM Bridge to community projects#5409

Open
jakezai250808-sudo wants to merge 1 commit into
teslamate-org:mainfrom
jakezai250808-sudo:add-teslamate-llm-bridge
Open

docs(projects): add TeslaMate LLM Bridge to community projects#5409
jakezai250808-sudo wants to merge 1 commit into
teslamate-org:mainfrom
jakezai250808-sudo:add-teslamate-llm-bridge

Conversation

@jakezai250808-sudo

Copy link
Copy Markdown

Adds TeslaMate LLM Bridge to the community projects list.

What it is

An open-source bridge that exposes a TeslaMate Postgres database to ChatGPT, Claude Desktop, and Coze through declarative-YAML "plays". Each play is one read-only SQL query plus a compute pipeline plus a creative-prompt template, and the same play definition is rendered as a ChatGPT Custom GPT Action, a Coze plugin tool, and an MCP tool — write once, every assistant can call it.

13 plays ship out of the box (driving personality, monthly wrapped, night-owl, early-bird, cumulative climb, charging habits, ...) and contributing a new one is YAML-only, no Java or Python required.

Why submit it here

It is built specifically on top of TeslaMate (reads the standard schema: drives, charging_processes, positions, ...) and the README directs users to install TeslaMate first. Closest existing entries on this page are TeslaMate Achievements (gamified badges) and the various Grafana/HA dashboards — this is a complementary "talk to your car via LLM" angle.

Safety

Plays are not raw SQL access. Each manifest passes a JSON-Schema gate, an SQL static guard (SELECT-only, no DDL/DML, statement timeout, read-only transaction), and an arithmetic-only expression language before being loaded.

Try it without a Tesla

git clone https://github.com/jakezai250808-sudo/teslamate-llm-bridge
cd teslamate-llm-bridge
docker compose --profile demo up -d --build
curl http://localhost:8770/api/v1/cars/99/play/driving-personality

License: AGPL-3.0. Repo: https://github.com/jakezai250808-sudo/teslamate-llm-bridge

Happy to adjust the description if it should be shorter or framed differently. Thanks for maintaining TeslaMate!

@netlify

netlify Bot commented Jun 14, 2026

Copy link
Copy Markdown

Deploy Preview for teslamate ready!

Name Link
🔨 Latest commit 91b5650
🔍 Latest deploy log https://app.netlify.com/projects/teslamate/deploys/6a2ea63c65a66800087e1443
😎 Deploy Preview https://deploy-preview-5409--teslamate.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@CLAassistant

CLAassistant commented Jun 14, 2026

Copy link
Copy Markdown

CLA assistant check
All committers have signed the CLA.

@JakobLichterfeld JakobLichterfeld added the kind:documentation Adds or improves documentation label Jun 14, 2026
@brianmay

Copy link
Copy Markdown
Collaborator

Hopefully database permissions are setup to only allow access to the public schema, and completely deny access to the private schema with the tokens.

Sure there may be other safeguards, but regardless I think this one is important and relatively easy.

But I don't see any instructions on how to do that....

@jakezai250808-sudo

Copy link
Copy Markdown
Author

Hi @brianmay — thanks, that's exactly the right instinct, and we've now documented it.

The bridge only issues read-only SELECTs (every query is a declarative "play" whose SQL is statically validated to reject writes), so it never needs write access or the tokens table. We've added a ready-to-run script (docs/teslamate-readonly-role.sql) that sets up exactly what you describe:

  • The role gets USAGE on the public schema only — no access to the private schema, so it cannot touch private.tokens at all.
  • On top of that it gets SELECT on an explicit allowlist of just the tables the plays read (cars, drives, charging_processes, positions), never tokens — which also keeps it safe on older installs that kept tokens in public.

The install docs (README + both guides) now recommend this restricted role instead of the default full-privilege teslamate user, with a verification query to confirm tokens isn't reachable.

Done in jakezai250808-sudo/teslamate-llm-bridge#32 / jakezai250808-sudo/teslamate-llm-bridge#33. Thanks for pushing on this — real improvement, and easy as you said.

@jakezai250808-sudo

Copy link
Copy Markdown
Author

I have read the CLA Document and I hereby sign the CLA

@JakobLichterfeld JakobLichterfeld added the note:discussion Details or approval are up for discussion label Jun 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

kind:documentation Adds or improves documentation note:discussion Details or approval are up for discussion

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants