powersync

Fail

Audited by Runlayer on Mar 12, 2026

Risk Level: HIGH
Scan Summary
Max Score
97%
Files
20
Flagged
13
Chunks
41
Flagged Files (13)
powersync/SKILL.mdHIGH
96.7%

Risky tool definition detected

powersync/references/powersync-service.mdHIGH
95.1%

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

powersync/AGENTS.mdHIGH
95.0%

Risky tool definition detected

Prompt Injection

powersync/references/powersync-cli.mdHIGH
94.8%

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

powersync/references/sdks/powersync-js.mdHIGH
93.7%

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

powersync/references/powersync-debug.mdHIGH
93.1%

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.

powersync/references/supabase-auth.mdHIGH
92.4%

Risky tool definition detected

powersync/references/attachments.mdMEDIUM
83.6%

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.

powersync/references/sdks/powersync-js-vue.mdMEDIUM
82.4%

Tool passed security scan

Malicious tool definition detected

powersync/references/sync-config.mdMEDIUM
80.3%

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.

powersync/references/sdks/powersync-dotnet.mdMEDIUM
80.1%

Tool passed security scan

Malicious tool definition detected

powersync/references/sdks/powersync-js-tanstack.mdLOW
66.3%

Tool passed security scan

powersync/references/sdks/powersync-kotlin.mdLOW
66.1%

Tool passed security scan

Passed Files (7)Click to expand
powersync/references/sdks/powersync-js-react.mdOK
45.6%

Tool passed security scan

powersync/references/powersync-overview.mdOK
45.1%

Tool passed security scan

powersync/references/sdks/powersync-js-react-native.mdOK
42.8%

Tool passed security scan

powersync/references/sdks/powersync-js-node.mdOK
40.5%

Tool passed security scan

powersync/references/sdks/powersync-dart.mdOK
36.3%

Tool passed security scan

powersync/references/sdks/powersync-swift.mdOK
33.2%

Tool passed security scan

powersync/CLAUDE.mdOK
8.2%

Tool passed security scan

Audit Metadata
Max File Score
97%
Classification
KNOWN_SERVER_PARTIAL_KNOWN
Files Scanned
20
Files Flagged
13
Chunks Analyzed
41
Analyzed
Mar 12, 2026, 01:54 PM
Security Audit — runlayer — powersync