powersync
Audited by Runlayer on Mar 12, 2026
Risky tool definition detected
Risky tool definition detected
Enable logical replication (skip this step for Supabase — it is already enabled) ALTER SYSTEM SET wal_level = 'logical'; -- Restart PostgreSQL after this -- 2. Create replication user (replace with a generated secure password—do NOT use "secure_password") CREATE USER powersync_replication WITH REPLICATION PASSWORD 'YOUR_GENERATED_PASSWORD'; -- 3. Grant read access GRANT SELECT ON ALL TABLES IN SCHEMA public TO powersync_replication; ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON TABLE
Prompt Injection
Privilege Escalation
Risky tool definition detected
Prompt Injection
Destructive Action
Risky tool definition detected
Verify and use the instance powersync status powersync validate powersync generate schema --output=ts --output-path=./schema.ts powersync generate token --subject=user-test-1 ``` ### Self-Hosted — Linking to an Existing Instance For self-hosted instances already running (not managed by the CLI), the CLI can link to them for schema generation, token generation, and status checks. **Information the agent must collect from the user:** - API URL of the running PowerSync instance - API token (must ma
Tool passed security scan
Risky tool definition detected
#### Streams in useQuery Gate a query on a specific stream having synced, without managing the subscription manually: ```ts const { data: lists } = useQuery('SELECT * FROM lists', [], { streams: [ { name: 'lists', parameters: { userId }, waitForStream: true, // hold isLoading: true until this stream syncs priority: 1, ttl: 3600, } ] }); ``` #### Imperative API ```ts // Subscribe directly const subscription = await db.syncStream('lists', { userId }).subscribe({ priority: 1, ttl: 3600 }); // Wait
Destructive Action
Context Poisoning
Prompt Injection
Tool passed security scan
Malicious tool definition detected
Check: - `sub` — user ID used in `request.user_id()` - `kid` — must match a key in PowerSync's keystore (Supabase: legacy vs. JWKS) - `exp` — must be ≤ `iat + 86400` - `aud` — must match your configured audience - Custom claims e.g.
Risky tool definition detected
Tool passed security scan
Malicious tool definition detected
Tool: powersync/references/attachments.md [2/2] Description: creation, ensuring the FK in your data model and the attachment record are always written atomically.
Tool passed security scan
Malicious tool definition detected
Risky tool definition detected
For a full overview, see [Sync Streams Overview](https://docs.powersync.com/sync/streams/overview.md) ## Requirements ### PowerSync Service - Self-hosted: v1.20.0+ - Cloud: Already met ### Sync Config Must use config edition 3 in their sync config: ```yaml config: edition: 3 ``` ### PowerSync SDKs There are minimum SDK requirements when using Sync Streams in an application. See [Minimum SDK Versions](https://docs.powersync.com/sync/streams/migration.md#minimum-sdk-versions) for a full list for e
Changing them requires reconnecting. ```yaml streams: config: auto_subscribe: true query: SELECT * FROM config WHERE env = connection.parameter('environment') ``` See [Connection Parameters](https://docs.powersync.com/sync/streams/parameters.md#connection-parameters) for full reference.
Tool passed security scan
Malicious tool definition detected
Tool passed security scan
Tool passed security scan
Passed Files (7)Click to expand
Tool passed security scan
Tool passed security scan
Tool passed security scan
Tool passed security scan
Tool passed security scan
Tool passed security scan
Tool passed security scan