diff --git a/.claude/settings.json b/.claude/settings.json new file mode 100644 index 00000000..9323ebe7 --- /dev/null +++ b/.claude/settings.json @@ -0,0 +1,15 @@ +{ + "permissions": { + "allow": [ + "Bash(for dir in posimai-brain posimai-feed posimai-reader posimai-events posimai-hotels posimai-maps posimai-together posimai-analytics)", + "Bash(do echo \"=== $dir ===\")", + "Read(//c/Users/maita/posimai-project/$dir/**)", + "Bash(done)", + "Bash(for dir in posimai-brain posimai-feed posimai-events posimai-hotels posimai-maps)", + "Read(//c/Users/maita/posimai-project/**)", + "Bash(grep -E \"\\\\.html$|next\\\\.config|tsconfig\")", + "Bash(vercel --version)", + "Bash(vercel whoami)" + ] + } +} diff --git a/.claude/settings.local.json b/.claude/settings.local.json new file mode 100644 index 00000000..204d1873 --- /dev/null +++ b/.claude/settings.local.json @@ -0,0 +1,34 @@ +{ + "permissions": { + "allow": [ + "Bash(ssh mai@100.76.7.3 'sed -n \"\"28,35p\"\" /volume1/docker/posimai_lab/posimai-api/server.js')", + "Bash(ssh mai@100.76.7.3 'sed -i \"\"30s/.*/ if (!origin || allowedOrigins.includes(origin) || (origin \\&\\& origin.match(\\/^https:\\\\\\\\\\\\/\\\\\\\\\\\\/.*\\\\\\\\.vercel\\\\\\\\.app$\\/))) cb(null, true);/\"\" /volume1/docker/posimai_lab/posimai-api/server.js && sed -n \"\"28,35p\"\" /volume1/docker/posimai_lab/posimai-api/server.js')", + "Bash(ssh mai@100.76.7.3 \"perl -i.bak -pe ''s/if \\(!origin \\|\\| allowedOrigins\\.includes\\(origin\\)\\) cb\\(null, true\\);/if (!origin || allowedOrigins.includes(origin) || (origin \\&\\& \\/^https:\\\\\\/\\\\\\/.*\\\\.vercel\\\\.app$\\/.test(origin))) cb(null, true);/'' /volume1/docker/posimai_lab/posimai-api/server.js && sed -n ''28,35p'' /volume1/docker/posimai_lab/posimai-api/server.js\")", + "Bash(ssh mai@100.76.7.3 \"head -29 /volume1/docker/posimai_lab/posimai-api/server.js > /tmp/server-part1.js && echo '' if (!origin || allowedOrigins.includes(origin) || (origin && /^https:\\/\\/.*\\.vercel\\.app$/.test(origin))) cb(null, true);'' > /tmp/server-part2.js && tail -n +31 /volume1/docker/posimai_lab/posimai-api/server.js > /tmp/server-part3.js && cat /tmp/server-part1.js /tmp/server-part2.js /tmp/server-part3.js > /volume1/docker/posimai_lab/posimai-api/server.js && sed -n ''28,35p'' /volume1/docker/posimai_lab/posimai-api/server.js\")", + "Bash(ssh mai@100.76.7.3 \"cp /volume1/docker/posimai_lab/posimai-api/server.js.backup-cors /volume1/docker/posimai_lab/posimai-api/server.js && head -29 /volume1/docker/posimai_lab/posimai-api/server.js > /tmp/server-new.js && echo '' if (!origin || allowedOrigins.includes(origin) || (origin && /^https:\\/\\/.*\\.vercel\\.app$/.test(origin))) cb(null, true);'' >> /tmp/server-new.js && tail -n +31 /volume1/docker/posimai_lab/posimai-api/server.js >> /tmp/server-new.js && mv /tmp/server-new.js /volume1/docker/posimai_lab/posimai-api/server.js && echo ''Updated CORS:'' && sed -n ''28,33p'' /volume1/docker/posimai_lab/posimai-api/server.js\")", + "Bash(ssh mai@100.76.7.3 \"cp /volume1/docker/posimai_lab/posimai-api/server.js.backup-cors /volume1/docker/posimai_lab/posimai-api/server.js && head -29 /volume1/docker/posimai_lab/posimai-api/server.js > /tmp/server-final.js && echo '' if (!origin || allowedOrigins.includes(origin) || (origin && /^https:\\/\\/.*\\.vercel\\.app$/.test(origin))) cb(null, true);'' >> /tmp/server-final.js && tail -n +32 /volume1/docker/posimai_lab/posimai-api/server.js >> /tmp/server-final.js && mv /tmp/server-final.js /volume1/docker/posimai_lab/posimai-api/server.js && echo ''CORS configuration updated:'' && sed -n ''28,35p'' /volume1/docker/posimai_lab/posimai-api/server.js\")", + "Bash(ssh mai@100.76.7.3 \"/usr/local/bin/docker restart posimai_api && sleep 3 && /usr/local/bin/docker logs --tail 20 posimai_api\")", + "Bash(ssh mai@100.76.7.3 \"cp /volume1/docker/posimai_lab/posimai-api/server.js.backup-cors /volume1/docker/posimai_lab/posimai-api/server.js && head -29 /volume1/docker/posimai_lab/posimai-api/server.js > /tmp/s1.js && cat >> /tmp/s1.js << ''EOF''\n if (!origin || allowedOrigins.includes(origin) || (origin && /^https:\\/\\/.*\\.vercel\\.app$/.test(origin))) cb(null, true);\nEOF\ntail -n +32 /volume1/docker/posimai_lab/posimai-api/server.js >> /tmp/s1.js && mv /tmp/s1.js /volume1/docker/posimai_lab/posimai-api/server.js && sed -n ''28,35p'' /volume1/docker/posimai_lab/posimai-api/server.js\")", + "Bash(ssh mai@100.76.7.3 \"/usr/local/bin/docker restart posimai_api && sleep 3 && /usr/local/bin/docker logs --tail 15 posimai_api 2>&1 | grep -E ''🧠|Port|Error|listening''\")", + "Bash(ssh mai@100.76.7.3 \"/usr/local/bin/docker logs --tail 30 posimai_api 2>&1\")", + "Bash(ssh mai@100.76.7.3 \"sed -n ''28,35p'' /volume1/docker/posimai_lab/posimai-api/server.js.backup-cors\")", + "Bash(ssh mai@100.76.7.3 \"cp /volume1/docker/posimai_lab/posimai-api/server.js.backup-cors /volume1/docker/posimai_lab/posimai-api/server.js && cat > /tmp/cors-update.txt << ''EOF''\napp.use(cors({\n origin: (origin, cb) => {\n if (!origin || allowedOrigins.includes(origin) || (origin && /^https:\\/\\/.*\\.vercel\\.app$/.test(origin))) cb(null, true);\n else cb(new Error(''CORS not allowed''));\n },\n methods: [''GET'', ''POST'', ''PATCH'', ''DELETE'', ''OPTIONS''],\n allowedHeaders: [''Content-Type'', ''Authorization'']\n}));\nEOF\nhead -27 /volume1/docker/posimai_lab/posimai-api/server.js > /tmp/server-fixed.js && cat /tmp/cors-update.txt >> /tmp/server-fixed.js && tail -n +36 /volume1/docker/posimai_lab/posimai-api/server.js >> /tmp/server-fixed.js && mv /tmp/server-fixed.js /volume1/docker/posimai_lab/posimai-api/server.js && echo ''CORS updated:'' && sed -n ''28,36p'' /volume1/docker/posimai_lab/posimai-api/server.js\")", + "Bash(ssh mai@100.76.7.3 \"head -35 /volume1/docker/posimai_lab/posimai-api/server.js > /tmp/server-clean.js && tail -n +37 /volume1/docker/posimai_lab/posimai-api/server.js >> /tmp/server-clean.js && mv /tmp/server-clean.js /volume1/docker/posimai_lab/posimai-api/server.js && echo ''Fixed CORS section:'' && sed -n ''28,40p'' /volume1/docker/posimai_lab/posimai-api/server.js\")", + "Bash(ssh mai@100.76.7.3 \"/usr/local/bin/docker restart posimai_api && sleep 4 && /usr/local/bin/docker logs --tail 10 posimai_api 2>&1\")", + "Bash(curl -s -H \"Origin: https://posimai-feed.vercel.app\" -H \"Access-Control-Request-Method: GET\" -X OPTIONS \"https://posimai-lab.tail72e846.ts.net/brain/api/feed/media?user_id=default_user\" -i)", + "Bash(curl -s -H \"Origin: https://posimai-feed-kg2ej40wu-posimais-projects.vercel.app\" -H \"Access-Control-Request-Method: GET\" -X OPTIONS \"https://posimai-lab.tail72e846.ts.net/brain/api/feed/media?user_id=default_user\" -i)", + "Bash(ssh mai@100.76.7.3 \"grep -n ''POST.*feed/media'' /volume1/docker/posimai_lab/posimai-api/server.js\")", + "Bash(ssh mai@100.76.7.3 \"sed -n ''629,700p'' /volume1/docker/posimai_lab/posimai-api/server.js\")", + "Bash(ssh mai@100.76.7.3 \"/usr/local/bin/docker exec -i gitea_db psql -U gitea -d posimai_brain << ''EOF''\n\\d feed_media\nEOF\")", + "Bash(ssh mai@100.76.7.3 \"\n# Backup\ncp /volume1/docker/posimai_lab/posimai-api/server.js /volume1/docker/posimai_lab/posimai-api/server.js.backup-before-upsert\n\n# Replace POST /feed/media endpoint (lines 629-657)\nhead -628 /volume1/docker/posimai_lab/posimai-api/server.js > /tmp/server-upsert.js\ncat /tmp/feed-media-upsert.js >> /tmp/server-upsert.js\ntail -n +658 /volume1/docker/posimai_lab/posimai-api/server.js >> /tmp/server-upsert.js\n\n# Apply changes\nmv /tmp/server-upsert.js /volume1/docker/posimai_lab/posimai-api/server.js\n\n# Verify\necho ''Updated POST /feed/media endpoint:''\nsed -n ''629,665p'' /volume1/docker/posimai_lab/posimai-api/server.js\n\")", + "Bash(ssh mai@100.76.7.3 \"\n# Remove duplicate closing bracket at line 665\nhead -664 /volume1/docker/posimai_lab/posimai-api/server.js > /tmp/server-clean.js\ntail -n +666 /volume1/docker/posimai_lab/posimai-api/server.js >> /tmp/server-clean.js\nmv /tmp/server-clean.js /volume1/docker/posimai_lab/posimai-api/server.js\n\necho ''Cleaned up endpoint:''\nsed -n ''629,670p'' /volume1/docker/posimai_lab/posimai-api/server.js\n\")", + "Bash(ssh mai@100.76.7.3 \"/usr/local/bin/docker restart posimai_api && sleep 4 && /usr/local/bin/docker logs --tail 15 posimai_api 2>&1 | grep -E ''🧠|Port|Error|listening''\")", + "Bash(git commit -m \"$(cat <<''EOF''\nRefactor: Idempotent UPSERT for feed media management\n\n変更内容:\n本来あるべき姿へとリファクタリングしました。\n\n1. バックエンドAPI (server.js):\n - POST /feed/media エンドポイントをUPSERTパターンに変更\n - PostgreSQL ON CONFLICT構文を使用した冪等性の確保\n - 既存メディアの場合は更新して200 OK、新規の場合は201 Created\n - 409 Conflictエラーの撤廃\n\n2. フロントエンド (index.html):\n - オンボーディング時のメディア登録処理をクリーンアップ\n - デフォルトメディア非表示化処理から409エラーハンドリングを削除\n - シンプルに成功レスポンスのみを処理\n\n技術的改善:\n- HTTPセマンティクスの正しい実装: POST操作の冪等性\n- ユーザー体験の向上: コンソールエラーの撤廃\n- コードの可読性向上: エラーハンドリングのシンプル化\n- データ整合性: UNIQUE制約とON CONFLICTによる保証\n\nBEFORE:\n- 重複登録時に409 Conflictエラー → コンソールに赤いエラー表示\n- フロントエンドで409を特別扱い → 複雑なエラーハンドリング\n\nAFTER:\n- 重複登録時にUPSERTで更新 → 200 OKで正常完了\n- フロントエンドはシンプルに成功のみ処理 → クリーンなコード\n- コンソールエラーなし → プロフェッショナルなUX\n\n🤖 Generated with [Claude Code](https://claude.com/claude-code)\n\nCo-Authored-By: Claude \nEOF\n)\")", + "Bash(for app in posimai-analytics posimai-dashboard)", + "Read(//c/Users/maita/posimai-project/posimai-dashboard/$BASE/**)", + "Bash(vercel ls)" + ], + "deny": [], + "ask": [] + } +} diff --git a/.playwright-mcp/console-2026-04-11T21-53-36-650Z.log b/.playwright-mcp/console-2026-04-11T21-53-36-650Z.log new file mode 100644 index 00000000..863d300b --- /dev/null +++ b/.playwright-mcp/console-2026-04-11T21-53-36-650Z.log @@ -0,0 +1 @@ +[ 981ms] [ERROR] Failed to load resource: the server responded with a status of 401 () @ chrome-error://chromewebdata/:0 diff --git a/.playwright-mcp/console-2026-04-11T21-53-39-465Z.log b/.playwright-mcp/console-2026-04-11T21-53-39-465Z.log new file mode 100644 index 00000000..b51491a6 --- /dev/null +++ b/.playwright-mcp/console-2026-04-11T21-53-39-465Z.log @@ -0,0 +1 @@ +[ 756ms] [ERROR] Failed to load resource: the server responded with a status of 401 () @ chrome-error://chromewebdata/:0 diff --git a/.playwright-mcp/console-2026-04-11T21-53-48-984Z.log b/.playwright-mcp/console-2026-04-11T21-53-48-984Z.log new file mode 100644 index 00000000..0ec8b5cd --- /dev/null +++ b/.playwright-mcp/console-2026-04-11T21-53-48-984Z.log @@ -0,0 +1 @@ +[ 598ms] [ERROR] Failed to load resource: the server responded with a status of 404 () @ https://example.com/favicon.ico:0 diff --git a/.playwright-mcp/console-2026-04-11T21-54-03-834Z.log b/.playwright-mcp/console-2026-04-11T21-54-03-834Z.log new file mode 100644 index 00000000..21c2df6f --- /dev/null +++ b/.playwright-mcp/console-2026-04-11T21-54-03-834Z.log @@ -0,0 +1,42 @@ +[ 325ms] [ERROR] Failed to load resource: the server responded with a status of 401 () @ https://posimai-lens-git-main-posimais-projects.vercel.app/:0 +[ 2101ms] [LOG] %c +▲ + +__ __ _ __ +\ \/ /___ __ __ _________ _____ (_)_ _______/ /_ + \ / __ \/ / / / / ___/ __ `/ __ \ / / / / / ___/ __/ + / / /_/ / /_/ / / /__/ /_/ / / / / / / /_/ (__ ) /_ +/_/\____/\__,_/ \___/\__,_/_/ /_/ __/ /\__,_/____/\__/ + __ _ __ __ /___/ + _____/ /_ (_)___ / /_/ /_ (_)___ ____ ______ + / ___/ __ \/ / __ \ / __/ __ \/ / __ \/ __ `/ ___/ + (__ ) / / / / /_/ / / /_/ / / / / / / / /_/ (__ ) +/____/_/ /_/_/ .___/ \__/_/ /_/_/_/ /_/\__, /____/ + /_/ /____/ + + +Hello! + +- Open Source https://vercel.com/oss +- Careers https://vercel.com/careers +- Status https://vercel-status.com + + font-family: "Geist Mono", monospace; white-space: pre; line-height: 1; @ https://vercel.com/_next/static/chunks/3vt9z9-00w7jo.js?dpl=dpl_3EQgGGg8UAHGMM9PQrASoz4KncR9:72 +[ 2666ms] [WARNING] [GSI_LOGGER]: Your client application uses one of the Google One Tap prompt UI status methods that may stop functioning when FedCM becomes mandatory. Refer to the migration guide to update your code accordingly and opt-in to FedCM to test your changes. Learn more: https://developers.google.com/identity/gsi/web/guides/fedcm-migration?s=dc#display_moment and https://developers.google.com/identity/gsi/web/guides/fedcm-migration?s=dc#skipped_moment @ https://accounts.google.com/gsi/client:84 +[ 2682ms] [ERROR] Failed to load resource: the server responded with a status of 403 () @ https://vercel.com/api/jwt:0 +[ 2685ms] [ERROR] Not signed in with the identity provider. @ https://vercel.com/login?next=%2Fsso-api%3Furl%3Dhttps%253A%252F%252Fposimai-lens-git-main-posimais-projects.vercel.app%252F%26nonce%3D107866772336819a503666cc5b058bef89b52aa10c0c2165077a11945f474e73:0 +[ 2844ms] [WARNING] Deprecated API for given entry type. @ https://vercel.com/_next/static/chunks/0835ycci1b4sv.js?dpl=dpl_3EQgGGg8UAHGMM9PQrASoz4KncR9:18 +[ 6063ms] [WARNING] The resource https://vercel.com/_next/static/media/ebay-light.3ft_ki8203ov0.svg?dpl=dpl_3EQgGGg8UAHGMM9PQrASoz4KncR9 was preloaded using link preload but not used within a few seconds from the window's load event. Please make sure it has an appropriate `as` value and it is preloaded intentionally. @ https://vercel.com/login?next=%2Fsso-api%3Furl%3Dhttps%253A%252F%252Fposimai-lens-git-main-posimais-projects.vercel.app%252F%26nonce%3D107866772336819a503666cc5b058bef89b52aa10c0c2165077a11945f474e73:0 +[ 6063ms] [WARNING] The resource https://vercel.com/_next/static/media/adobe-light.406_7oryl71va.svg?dpl=dpl_3EQgGGg8UAHGMM9PQrASoz4KncR9 was preloaded using link preload but not used within a few seconds from the window's load event. Please make sure it has an appropriate `as` value and it is preloaded intentionally. @ https://vercel.com/login?next=%2Fsso-api%3Furl%3Dhttps%253A%252F%252Fposimai-lens-git-main-posimais-projects.vercel.app%252F%26nonce%3D107866772336819a503666cc5b058bef89b52aa10c0c2165077a11945f474e73:0 +[ 6064ms] [WARNING] The resource https://vercel.com/_next/static/chunks/1mkn1n4cf7-_i.css?dpl=dpl_3EQgGGg8UAHGMM9PQrASoz4KncR9 was preloaded using link preload but not used within a few seconds from the window's load event. Please make sure it has an appropriate `as` value and it is preloaded intentionally. @ https://vercel.com/login?next=%2Fsso-api%3Furl%3Dhttps%253A%252F%252Fposimai-lens-git-main-posimais-projects.vercel.app%252F%26nonce%3D107866772336819a503666cc5b058bef89b52aa10c0c2165077a11945f474e73:0 +[ 6064ms] [WARNING] The resource https://vercel.com/_next/static/media/stripe-light.2l_1jctpe6k_4.svg?dpl=dpl_3EQgGGg8UAHGMM9PQrASoz4KncR9 was preloaded using link preload but not used within a few seconds from the window's load event. Please make sure it has an appropriate `as` value and it is preloaded intentionally. @ https://vercel.com/login?next=%2Fsso-api%3Furl%3Dhttps%253A%252F%252Fposimai-lens-git-main-posimais-projects.vercel.app%252F%26nonce%3D107866772336819a503666cc5b058bef89b52aa10c0c2165077a11945f474e73:0 +[ 6064ms] [WARNING] The resource https://vercel.com/_next/static/media/stripe-dark.16ozjth2vgb_3.svg?dpl=dpl_3EQgGGg8UAHGMM9PQrASoz4KncR9 was preloaded using link preload but not used within a few seconds from the window's load event. Please make sure it has an appropriate `as` value and it is preloaded intentionally. @ https://vercel.com/login?next=%2Fsso-api%3Furl%3Dhttps%253A%252F%252Fposimai-lens-git-main-posimais-projects.vercel.app%252F%26nonce%3D107866772336819a503666cc5b058bef89b52aa10c0c2165077a11945f474e73:0 +[ 6064ms] [WARNING] The resource https://vercel.com/_next/static/media/ebay-dark.34mho2a18qqlt.svg?dpl=dpl_3EQgGGg8UAHGMM9PQrASoz4KncR9 was preloaded using link preload but not used within a few seconds from the window's load event. Please make sure it has an appropriate `as` value and it is preloaded intentionally. @ https://vercel.com/login?next=%2Fsso-api%3Furl%3Dhttps%253A%252F%252Fposimai-lens-git-main-posimais-projects.vercel.app%252F%26nonce%3D107866772336819a503666cc5b058bef89b52aa10c0c2165077a11945f474e73:0 +[ 31418ms] [ERROR] [GSI_LOGGER]: FedCM get() rejects with NetworkError: Error retrieving a token. @ https://vercel.com/_next/static/chunks/10rz-1kzad15u.js?dpl=dpl_3EQgGGg8UAHGMM9PQrASoz4KncR9:2 +[ 31834ms] [ERROR] Failed to load resource: the server responded with a status of 429 () @ https://o205439.ingest.sentry.io/api/1323670/envelope/?sentry_key=d00780d432ac4ccf882f60dd02062e14&sentry_version=7&sentry_client=sentry.javascript.browser%2F7.111.0:0 +[ 34914ms] [WARNING] The resource https://vercel.com/_next/static/media/ebay-light.3ft_ki8203ov0.svg?dpl=dpl_3EQgGGg8UAHGMM9PQrASoz4KncR9 was preloaded using link preload but not used within a few seconds from the window's load event. Please make sure it has an appropriate `as` value and it is preloaded intentionally. @ https://vercel.com/login?next=%2Fsso-api%3Furl%3Dhttps%253A%252F%252Fposimai-lens-git-main-posimais-projects.vercel.app%252F%26nonce%3D107866772336819a503666cc5b058bef89b52aa10c0c2165077a11945f474e73:0 +[ 34914ms] [WARNING] The resource https://vercel.com/_next/static/media/adobe-light.406_7oryl71va.svg?dpl=dpl_3EQgGGg8UAHGMM9PQrASoz4KncR9 was preloaded using link preload but not used within a few seconds from the window's load event. Please make sure it has an appropriate `as` value and it is preloaded intentionally. @ https://vercel.com/login?next=%2Fsso-api%3Furl%3Dhttps%253A%252F%252Fposimai-lens-git-main-posimais-projects.vercel.app%252F%26nonce%3D107866772336819a503666cc5b058bef89b52aa10c0c2165077a11945f474e73:0 +[ 34914ms] [WARNING] The resource https://vercel.com/_next/static/chunks/1mkn1n4cf7-_i.css?dpl=dpl_3EQgGGg8UAHGMM9PQrASoz4KncR9 was preloaded using link preload but not used within a few seconds from the window's load event. Please make sure it has an appropriate `as` value and it is preloaded intentionally. @ https://vercel.com/login?next=%2Fsso-api%3Furl%3Dhttps%253A%252F%252Fposimai-lens-git-main-posimais-projects.vercel.app%252F%26nonce%3D107866772336819a503666cc5b058bef89b52aa10c0c2165077a11945f474e73:0 +[ 34914ms] [WARNING] The resource https://vercel.com/_next/static/media/stripe-light.2l_1jctpe6k_4.svg?dpl=dpl_3EQgGGg8UAHGMM9PQrASoz4KncR9 was preloaded using link preload but not used within a few seconds from the window's load event. Please make sure it has an appropriate `as` value and it is preloaded intentionally. @ https://vercel.com/login?next=%2Fsso-api%3Furl%3Dhttps%253A%252F%252Fposimai-lens-git-main-posimais-projects.vercel.app%252F%26nonce%3D107866772336819a503666cc5b058bef89b52aa10c0c2165077a11945f474e73:0 +[ 34914ms] [WARNING] The resource https://vercel.com/_next/static/media/stripe-dark.16ozjth2vgb_3.svg?dpl=dpl_3EQgGGg8UAHGMM9PQrASoz4KncR9 was preloaded using link preload but not used within a few seconds from the window's load event. Please make sure it has an appropriate `as` value and it is preloaded intentionally. @ https://vercel.com/login?next=%2Fsso-api%3Furl%3Dhttps%253A%252F%252Fposimai-lens-git-main-posimais-projects.vercel.app%252F%26nonce%3D107866772336819a503666cc5b058bef89b52aa10c0c2165077a11945f474e73:0 +[ 34914ms] [WARNING] The resource https://vercel.com/_next/static/media/ebay-dark.34mho2a18qqlt.svg?dpl=dpl_3EQgGGg8UAHGMM9PQrASoz4KncR9 was preloaded using link preload but not used within a few seconds from the window's load event. Please make sure it has an appropriate `as` value and it is preloaded intentionally. @ https://vercel.com/login?next=%2Fsso-api%3Furl%3Dhttps%253A%252F%252Fposimai-lens-git-main-posimais-projects.vercel.app%252F%26nonce%3D107866772336819a503666cc5b058bef89b52aa10c0c2165077a11945f474e73:0 diff --git a/.playwright-mcp/console-2026-04-11T21-54-55-017Z.log b/.playwright-mcp/console-2026-04-11T21-54-55-017Z.log new file mode 100644 index 00000000..19104094 --- /dev/null +++ b/.playwright-mcp/console-2026-04-11T21-54-55-017Z.log @@ -0,0 +1,35 @@ +[ 533ms] [LOG] %c +▲ + + ________ ___ ____ ________ __ + /_ __/ /_ ___ / | / _/ / ____/ /___ __ ______/ / + / / / __ \/ _ \ / /| | / / / / / / __ \/ / / / __ / + / / / / / / __/ / ___ |_/ / / /___/ / /_/ / /_/ / /_/ / +/_/ /_/ /_/\___/ /_/ |_/___/ \____/_/\____/\__,_/\__,_/ + + +Hello! + +- Open Source https://vercel.com/oss +- Careers https://vercel.com/careers +- Status https://vercel-status.com + + font-family: "Geist Mono", monospace; white-space: pre; line-height: 1; @ https://vercel.com/_next/static/chunks/3vt9z9-00w7jo.js?dpl=dpl_3EQgGGg8UAHGMM9PQrASoz4KncR9:72 +[ 1361ms] [WARNING] [GSI_LOGGER]: Your client application uses one of the Google One Tap prompt UI status methods that may stop functioning when FedCM becomes mandatory. Refer to the migration guide to update your code accordingly and opt-in to FedCM to test your changes. Learn more: https://developers.google.com/identity/gsi/web/guides/fedcm-migration?s=dc#display_moment and https://developers.google.com/identity/gsi/web/guides/fedcm-migration?s=dc#skipped_moment @ https://accounts.google.com/gsi/client:84 +[ 1528ms] [ERROR] Failed to load resource: the server responded with a status of 403 () @ https://vercel.com/api/jwt:0 +[ 1530ms] [ERROR] Not signed in with the identity provider. @ https://vercel.com/login?next=%2Fposimais-projects%2Fposimai-lens%2Fsettings%2Fdeployment-protection:0 +[ 1864ms] [WARNING] Deprecated API for given entry type. @ https://vercel.com/_next/static/chunks/0835ycci1b4sv.js?dpl=dpl_3EQgGGg8UAHGMM9PQrASoz4KncR9:18 +[ 5232ms] [ERROR] [GSI_LOGGER]: FedCM get() rejects with NetworkError: Error retrieving a token. @ https://vercel.com/_next/static/chunks/10rz-1kzad15u.js?dpl=dpl_3EQgGGg8UAHGMM9PQrASoz4KncR9:2 +[ 5456ms] [WARNING] The resource https://vercel.com/_next/static/media/ebay-light.3ft_ki8203ov0.svg?dpl=dpl_3EQgGGg8UAHGMM9PQrASoz4KncR9 was preloaded using link preload but not used within a few seconds from the window's load event. Please make sure it has an appropriate `as` value and it is preloaded intentionally. @ https://vercel.com/login?next=%2Fposimais-projects%2Fposimai-lens%2Fsettings%2Fdeployment-protection:0 +[ 5456ms] [WARNING] The resource https://vercel.com/_next/static/media/adobe-light.406_7oryl71va.svg?dpl=dpl_3EQgGGg8UAHGMM9PQrASoz4KncR9 was preloaded using link preload but not used within a few seconds from the window's load event. Please make sure it has an appropriate `as` value and it is preloaded intentionally. @ https://vercel.com/login?next=%2Fposimais-projects%2Fposimai-lens%2Fsettings%2Fdeployment-protection:0 +[ 5456ms] [WARNING] The resource https://vercel.com/_next/static/chunks/1mkn1n4cf7-_i.css?dpl=dpl_3EQgGGg8UAHGMM9PQrASoz4KncR9 was preloaded using link preload but not used within a few seconds from the window's load event. Please make sure it has an appropriate `as` value and it is preloaded intentionally. @ https://vercel.com/login?next=%2Fposimais-projects%2Fposimai-lens%2Fsettings%2Fdeployment-protection:0 +[ 5456ms] [WARNING] The resource https://vercel.com/_next/static/media/stripe-light.2l_1jctpe6k_4.svg?dpl=dpl_3EQgGGg8UAHGMM9PQrASoz4KncR9 was preloaded using link preload but not used within a few seconds from the window's load event. Please make sure it has an appropriate `as` value and it is preloaded intentionally. @ https://vercel.com/login?next=%2Fposimais-projects%2Fposimai-lens%2Fsettings%2Fdeployment-protection:0 +[ 5456ms] [WARNING] The resource https://vercel.com/_next/static/media/stripe-dark.16ozjth2vgb_3.svg?dpl=dpl_3EQgGGg8UAHGMM9PQrASoz4KncR9 was preloaded using link preload but not used within a few seconds from the window's load event. Please make sure it has an appropriate `as` value and it is preloaded intentionally. @ https://vercel.com/login?next=%2Fposimais-projects%2Fposimai-lens%2Fsettings%2Fdeployment-protection:0 +[ 5456ms] [WARNING] The resource https://vercel.com/_next/static/media/ebay-dark.34mho2a18qqlt.svg?dpl=dpl_3EQgGGg8UAHGMM9PQrASoz4KncR9 was preloaded using link preload but not used within a few seconds from the window's load event. Please make sure it has an appropriate `as` value and it is preloaded intentionally. @ https://vercel.com/login?next=%2Fposimais-projects%2Fposimai-lens%2Fsettings%2Fdeployment-protection:0 +[ 5478ms] [ERROR] Failed to load resource: the server responded with a status of 429 () @ https://o205439.ingest.sentry.io/api/1323670/envelope/?sentry_key=d00780d432ac4ccf882f60dd02062e14&sentry_version=7&sentry_client=sentry.javascript.browser%2F7.111.0:0 +[ 8549ms] [WARNING] The resource https://vercel.com/_next/static/media/ebay-light.3ft_ki8203ov0.svg?dpl=dpl_3EQgGGg8UAHGMM9PQrASoz4KncR9 was preloaded using link preload but not used within a few seconds from the window's load event. Please make sure it has an appropriate `as` value and it is preloaded intentionally. @ https://vercel.com/login?next=%2Fposimais-projects%2Fposimai-lens%2Fsettings%2Fdeployment-protection:0 +[ 8549ms] [WARNING] The resource https://vercel.com/_next/static/media/adobe-light.406_7oryl71va.svg?dpl=dpl_3EQgGGg8UAHGMM9PQrASoz4KncR9 was preloaded using link preload but not used within a few seconds from the window's load event. Please make sure it has an appropriate `as` value and it is preloaded intentionally. @ https://vercel.com/login?next=%2Fposimais-projects%2Fposimai-lens%2Fsettings%2Fdeployment-protection:0 +[ 8549ms] [WARNING] The resource https://vercel.com/_next/static/chunks/1mkn1n4cf7-_i.css?dpl=dpl_3EQgGGg8UAHGMM9PQrASoz4KncR9 was preloaded using link preload but not used within a few seconds from the window's load event. Please make sure it has an appropriate `as` value and it is preloaded intentionally. @ https://vercel.com/login?next=%2Fposimais-projects%2Fposimai-lens%2Fsettings%2Fdeployment-protection:0 +[ 8549ms] [WARNING] The resource https://vercel.com/_next/static/media/stripe-light.2l_1jctpe6k_4.svg?dpl=dpl_3EQgGGg8UAHGMM9PQrASoz4KncR9 was preloaded using link preload but not used within a few seconds from the window's load event. Please make sure it has an appropriate `as` value and it is preloaded intentionally. @ https://vercel.com/login?next=%2Fposimais-projects%2Fposimai-lens%2Fsettings%2Fdeployment-protection:0 +[ 8549ms] [WARNING] The resource https://vercel.com/_next/static/media/stripe-dark.16ozjth2vgb_3.svg?dpl=dpl_3EQgGGg8UAHGMM9PQrASoz4KncR9 was preloaded using link preload but not used within a few seconds from the window's load event. Please make sure it has an appropriate `as` value and it is preloaded intentionally. @ https://vercel.com/login?next=%2Fposimais-projects%2Fposimai-lens%2Fsettings%2Fdeployment-protection:0 +[ 8550ms] [WARNING] The resource https://vercel.com/_next/static/media/ebay-dark.34mho2a18qqlt.svg?dpl=dpl_3EQgGGg8UAHGMM9PQrASoz4KncR9 was preloaded using link preload but not used within a few seconds from the window's load event. Please make sure it has an appropriate `as` value and it is preloaded intentionally. @ https://vercel.com/login?next=%2Fposimais-projects%2Fposimai-lens%2Fsettings%2Fdeployment-protection:0 diff --git a/.playwright-mcp/page-2026-04-11T21-53-40-324Z.yml b/.playwright-mcp/page-2026-04-11T21-53-40-324Z.yml new file mode 100644 index 00000000..e69de29b diff --git a/.playwright-mcp/page-2026-04-11T21-53-49-654Z.yml b/.playwright-mcp/page-2026-04-11T21-53-49-654Z.yml new file mode 100644 index 00000000..2db28700 --- /dev/null +++ b/.playwright-mcp/page-2026-04-11T21-53-49-654Z.yml @@ -0,0 +1,6 @@ +- generic [ref=e2]: + - heading "Example Domain" [level=1] [ref=e3] + - paragraph [ref=e4]: This domain is for use in documentation examples without needing permission. Avoid use in operations. + - paragraph [ref=e5]: + - link "Learn more" [ref=e6] [cursor=pointer]: + - /url: https://iana.org/domains/example \ No newline at end of file diff --git a/.playwright-mcp/page-2026-04-11T21-54-06-484Z.yml b/.playwright-mcp/page-2026-04-11T21-54-06-484Z.yml new file mode 100644 index 00000000..4c9e680d --- /dev/null +++ b/.playwright-mcp/page-2026-04-11T21-54-06-484Z.yml @@ -0,0 +1,49 @@ +- generic [active] [ref=e1]: + - link "Skip to content": + - /url: "#geist-skip-nav" + - generic [ref=e3]: + - banner [ref=e4]: + - link "Vercel logo": + - /url: /home + - button "Vercel Logo": + - img "Vercel Logo" + - navigation [ref=e5]: + - navigation [ref=e6]: + - link "Sign Up" [ref=e7] [cursor=pointer]: + - /url: /signup?next=%2Fsso-api%3Furl%3Dhttps%253A%252F%252Fposimai-lens-git-main-posimais-projects.vercel.app%252F%26nonce%3D107866772336819a503666cc5b058bef89b52aa10c0c2165077a11945f474e73 + - paragraph [ref=e9]: Sign Up + - main [ref=e10]: + - generic [ref=e12]: + - heading "Log in to Vercel" [level=1] [ref=e15] + - generic [ref=e16]: + - generic [ref=e17]: + - textbox "Email Address" [ref=e19] + - button "Continue with Email" [ref=e21] [cursor=pointer]: + - generic [ref=e22]: Continue with Email + - generic [ref=e24]: + - button "Continue with Google" [ref=e25] [cursor=pointer]: + - img [ref=e28] + - generic [ref=e34]: Continue with Google + - button "Continue with GitHub" [ref=e35] [cursor=pointer]: + - img [ref=e37] + - generic [ref=e41]: Continue with GitHub + - button "Continue with Apple" [ref=e42] [cursor=pointer]: + - img [ref=e44] + - generic [ref=e47]: Continue with Apple + - button "Continue with SAML SSO" [ref=e49] [cursor=pointer]: + - img [ref=e51] + - generic [ref=e53]: Continue with SAML SSO + - button "Continue with Passkey" [ref=e54] [cursor=pointer]: + - img [ref=e56] + - generic [ref=e58]: Continue with Passkey + - button "Show other options" [ref=e59] [cursor=pointer]: + - generic [ref=e60]: Show other options + - paragraph [ref=e62]: + - text: Don't have an account? + - link "Sign Up" [ref=e63] [cursor=pointer]: + - /url: /signup?next=%2Fsso-api%3Furl%3Dhttps%253A%252F%252Fposimai-lens-git-main-posimais-projects.vercel.app%252F%26nonce%3D107866772336819a503666cc5b058bef89b52aa10c0c2165077a11945f474e73 + - generic [ref=e66]: + - link "Terms" [ref=e67] [cursor=pointer]: + - /url: /legal/terms + - link "Privacy Policy" [ref=e68] [cursor=pointer]: + - /url: /legal/privacy-policy \ No newline at end of file diff --git a/.playwright-mcp/page-2026-04-11T21-54-57-050Z.yml b/.playwright-mcp/page-2026-04-11T21-54-57-050Z.yml new file mode 100644 index 00000000..58734a48 --- /dev/null +++ b/.playwright-mcp/page-2026-04-11T21-54-57-050Z.yml @@ -0,0 +1,55 @@ +- generic [active] [ref=e1]: + - link "Skip to content": + - /url: "#geist-skip-nav" + - generic [ref=e3]: + - banner [ref=e4]: + - link "Vercel logo": + - /url: /home + - button "Vercel Logo": + - img "Vercel Logo" + - navigation [ref=e5]: + - navigation [ref=e6]: + - link "Sign Up" [ref=e7] [cursor=pointer]: + - /url: /signup?next=%2Fposimais-projects%2Fposimai-lens%2Fsettings%2Fdeployment-protection + - paragraph [ref=e9]: Sign Up + - main [ref=e10]: + - generic [ref=e12]: + - heading "Log in to Vercel" [level=1] [ref=e15] + - generic [ref=e16]: + - generic [ref=e17]: + - textbox "Email Address" [ref=e19] + - button "Continue with Email" [ref=e21] [cursor=pointer]: + - generic [ref=e22]: Continue with Email + - generic [ref=e24]: + - button "Continue with Google" [ref=e25] [cursor=pointer]: + - img [ref=e28] + - generic [ref=e34]: Continue with Google + - button "Continue with GitHub" [ref=e35] [cursor=pointer]: + - img [ref=e37] + - generic [ref=e41]: Continue with GitHub + - button "Continue with Apple" [ref=e42] [cursor=pointer]: + - img [ref=e44] + - generic [ref=e47]: Continue with Apple + - button "Continue with SAML SSO" [ref=e49] [cursor=pointer]: + - img [ref=e51] + - generic [ref=e53]: Continue with SAML SSO + - button "Continue with Passkey" [ref=e54] [cursor=pointer]: + - img [ref=e56] + - generic [ref=e58]: Continue with Passkey + - button "Show other options" [ref=e59] [cursor=pointer]: + - generic [ref=e60]: Show other options + - paragraph [ref=e62]: + - text: Don't have an account? + - link "Sign Up" [ref=e63] [cursor=pointer]: + - /url: /signup?next=%2Fposimais-projects%2Fposimai-lens%2Fsettings%2Fdeployment-protection + - generic [ref=e66]: + - link "Terms" [ref=e67] [cursor=pointer]: + - /url: /legal/terms + - link "Privacy Policy" [ref=e68] [cursor=pointer]: + - /url: /legal/privacy-policy + - alert [ref=e69] + - generic: + - generic: + - generic: + - generic: + - img \ No newline at end of file diff --git a/.serena/.gitignore b/.serena/.gitignore new file mode 100644 index 00000000..14d86ad6 --- /dev/null +++ b/.serena/.gitignore @@ -0,0 +1 @@ +/cache diff --git a/.serena/project.yml b/.serena/project.yml new file mode 100644 index 00000000..1789ea9c --- /dev/null +++ b/.serena/project.yml @@ -0,0 +1,149 @@ +# the name by which the project can be referenced within Serena +project_name: "posimai-project" + + +# list of languages for which language servers are started; choose from: +# al bash clojure cpp csharp +# csharp_omnisharp dart elixir elm erlang +# fortran fsharp go groovy haskell +# java julia kotlin lua markdown +# matlab nix pascal perl php +# php_phpactor powershell python python_jedi r +# rego ruby ruby_solargraph rust scala +# swift terraform toml typescript typescript_vts +# vue yaml zig +# (This list may be outdated. For the current list, see values of Language enum here: +# https://github.com/oraios/serena/blob/main/src/solidlsp/ls_config.py +# For some languages, there are alternative language servers, e.g. csharp_omnisharp, ruby_solargraph.) +# Note: +# - For C, use cpp +# - For JavaScript, use typescript +# - For Free Pascal/Lazarus, use pascal +# Special requirements: +# Some languages require additional setup/installations. +# See here for details: https://oraios.github.io/serena/01-about/020_programming-languages.html#language-servers +# When using multiple languages, the first language server that supports a given file will be used for that file. +# The first language is the default language and the respective language server will be used as a fallback. +# Note that when using the JetBrains backend, language servers are not used and this list is correspondingly ignored. +languages: +- typescript + +# the encoding used by text files in the project +# For a list of possible encodings, see https://docs.python.org/3.11/library/codecs.html#standard-encodings +encoding: "utf-8" + +# The language backend to use for this project. +# If not set, the global setting from serena_config.yml is used. +# Valid values: LSP, JetBrains +# Note: the backend is fixed at startup. If a project with a different backend +# is activated post-init, an error will be returned. +language_backend: + +# whether to use project's .gitignore files to ignore files +ignore_all_files_in_gitignore: true + +# list of additional paths to ignore in this project. +# Same syntax as gitignore, so you can use * and **. +# Note: global ignored_paths from serena_config.yml are also applied additively. +ignored_paths: [] + +# whether the project is in read-only mode +# If set to true, all editing tools will be disabled and attempts to use them will result in an error +# Added on 2025-04-18 +read_only: false + +# list of tool names to exclude. We recommend not excluding any tools, see the readme for more details. +# Below is the complete list of tools for convenience. +# To make sure you have the latest list of tools, and to view their descriptions, +# execute `uv run scripts/print_tool_overview.py`. +# +# * `activate_project`: Activates a project by name. +# * `check_onboarding_performed`: Checks whether project onboarding was already performed. +# * `create_text_file`: Creates/overwrites a file in the project directory. +# * `delete_lines`: Deletes a range of lines within a file. +# * `delete_memory`: Deletes a memory from Serena's project-specific memory store. +# * `execute_shell_command`: Executes a shell command. +# * `find_referencing_code_snippets`: Finds code snippets in which the symbol at the given location is referenced. +# * `find_referencing_symbols`: Finds symbols that reference the symbol at the given location (optionally filtered by type). +# * `find_symbol`: Performs a global (or local) search for symbols with/containing a given name/substring (optionally filtered by type). +# * `get_current_config`: Prints the current configuration of the agent, including the active and available projects, tools, contexts, and modes. +# * `get_symbols_overview`: Gets an overview of the top-level symbols defined in a given file. +# * `initial_instructions`: Gets the initial instructions for the current project. +# Should only be used in settings where the system prompt cannot be set, +# e.g. in clients you have no control over, like Claude Desktop. +# * `insert_after_symbol`: Inserts content after the end of the definition of a given symbol. +# * `insert_at_line`: Inserts content at a given line in a file. +# * `insert_before_symbol`: Inserts content before the beginning of the definition of a given symbol. +# * `list_dir`: Lists files and directories in the given directory (optionally with recursion). +# * `list_memories`: Lists memories in Serena's project-specific memory store. +# * `onboarding`: Performs onboarding (identifying the project structure and essential tasks, e.g. for testing or building). +# * `prepare_for_new_conversation`: Provides instructions for preparing for a new conversation (in order to continue with the necessary context). +# * `read_file`: Reads a file within the project directory. +# * `read_memory`: Reads the memory with the given name from Serena's project-specific memory store. +# * `remove_project`: Removes a project from the Serena configuration. +# * `replace_lines`: Replaces a range of lines within a file with new content. +# * `replace_symbol_body`: Replaces the full definition of a symbol. +# * `restart_language_server`: Restarts the language server, may be necessary when edits not through Serena happen. +# * `search_for_pattern`: Performs a search for a pattern in the project. +# * `summarize_changes`: Provides instructions for summarizing the changes made to the codebase. +# * `switch_modes`: Activates modes by providing a list of their names +# * `think_about_collected_information`: Thinking tool for pondering the completeness of collected information. +# * `think_about_task_adherence`: Thinking tool for determining whether the agent is still on track with the current task. +# * `think_about_whether_you_are_done`: Thinking tool for determining whether the task is truly completed. +# * `write_memory`: Writes a named memory (for future reference) to Serena's project-specific memory store. +excluded_tools: [] + +# list of tools to include that would otherwise be disabled (particularly optional tools that are disabled by default) +included_optional_tools: [] + +# fixed set of tools to use as the base tool set (if non-empty), replacing Serena's default set of tools. +# This cannot be combined with non-empty excluded_tools or included_optional_tools. +fixed_tools: [] + +# list of mode names to that are always to be included in the set of active modes +# The full set of modes to be activated is base_modes + default_modes. +# If the setting is undefined, the base_modes from the global configuration (serena_config.yml) apply. +# Otherwise, this setting overrides the global configuration. +# Set this to [] to disable base modes for this project. +# Set this to a list of mode names to always include the respective modes for this project. +base_modes: + +# list of mode names that are to be activated by default. +# The full set of modes to be activated is base_modes + default_modes. +# If the setting is undefined, the default_modes from the global configuration (serena_config.yml) apply. +# Otherwise, this overrides the setting from the global configuration (serena_config.yml). +# This setting can, in turn, be overridden by CLI parameters (--mode). +default_modes: + +# initial prompt for the project. It will always be given to the LLM upon activating the project +# (contrary to the memories, which are loaded on demand). +initial_prompt: "" + +# time budget (seconds) per tool call for the retrieval of additional symbol information +# such as docstrings or parameter information. +# This overrides the corresponding setting in the global configuration; see the documentation there. +# If null or missing, use the setting from the global configuration. +symbol_info_budget: + +# list of regex patterns which, when matched, mark a memory entry as read‑only. +# Extends the list from the global configuration, merging the two lists. +read_only_memory_patterns: [] + +# line ending convention to use when writing source files. +# Possible values: unset (use global setting), "lf", "crlf", or "native" (platform default) +# This does not affect Serena's own files (e.g. memories and configuration files), which always use native line endings. +line_ending: + +# list of regex patterns for memories to completely ignore. +# Matching memories will not appear in list_memories or activate_project output +# and cannot be accessed via read_memory or write_memory. +# To access ignored memory files, use the read_file tool on the raw file path. +# Extends the list from the global configuration, merging the two lists. +# Example: ["_archive/.*", "_episodes/.*"] +ignored_memory_patterns: [] + +# advanced configuration option allowing to configure language server-specific options. +# Maps the language key to the options. +# Have a look at the docstring of the constructors of the LS implementations within solidlsp (e.g., for C# or PHP) to see which options are available. +# No documentation on options means no options are available. +ls_specific_settings: {} diff --git a/.stignore b/.stignore deleted file mode 100644 index 9a963697..00000000 --- a/.stignore +++ /dev/null @@ -1,20 +0,0 @@ -// Syncthing ignore file for posimai-project -// IMPORTANT: .git を同期すると git インデックスが破損するため必須 - -// Git 内部ファイル(絶対に同期しない) -.git - -// 依存関係・ビルド成果物(大量ファイル、同期不要) -node_modules -.next -out -dist -build - -// 環境変数(秘密情報、意図的にリポジトリ外) -.env -.env.local - -// OS 一時ファイル -.DS_Store -Thumbs.db diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 00000000..a249e578 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,16 @@ +{ + "guard.excludeDirs": [ + "node_modules", + ".next", + ".git", + "dist", + "build", + "out", + ".turbo", + ".cache", + "coverage", + "__pycache__", + ".venv", + "venv" + ] +} \ No newline at end of file diff --git a/DESIGN.md b/DESIGN.md index 7370bee2..3c21de41 100644 --- a/DESIGN.md +++ b/DESIGN.md @@ -77,7 +77,7 @@ Station・Guard・その他サイバー系アプリで使うダークブルー [data-app-id="posimai-atlas"] { --accent: #22D3EE; } /* Cyan */ [data-app-id="posimai-dev"] { --accent: #A78BFA; } /* Violet */ [data-app-id="posimai-journal"]{ --accent: #80CAEE; } /* Sky-Blue */ -[data-app-id="posimai-guard"] { --accent: #F97316; } /* Amber-Orange */ +[data-app-id="posimai-guard"] { --accent: #22D3EE; } /* Cyan — hacker/security */ /* NG: ルートへの直書き上書き */ :root { --accent: #22D3EE; } @@ -89,7 +89,7 @@ Station・Guard・その他サイバー系アプリで使うダークブルー | posimai-journal / posimai-site | `#80CAEE` Sky-Blue | 静かで知的な印象 | | posimai-atlas | `#22D3EE` Cyan | サイバー・ターミナル感。背景も `#0C1221` navy | | posimai-dev | `#A78BFA` Violet | コード・AI・ターミナルの融合 | -| posimai-guard | `#F97316` Amber-Orange | セキュリティ・警告の視覚的コンテキスト | +| posimai-guard | `#22D3EE` Cyan | ハッカーツール・サイバーセキュリティのコンテキスト | --- diff --git a/docs/claude-code-blog-proposal.md b/docs/claude-code-blog-proposal.md new file mode 100644 index 00000000..8c7b2449 --- /dev/null +++ b/docs/claude-code-blog-proposal.md @@ -0,0 +1,68 @@ +# Posimai Auto-Blogging System (Architect without Code) 開発提案プロンプト + +## Claude Code へのミッション +現在、非エンジニアでありながらAIを駆使してアーキテクチャを設計・開発している「Posimai」エコシステムの専属アーキテクト(ユーザー)の活動を、完全自動でブログ化・コンテンツ化するプロジェクトを立ち上げようとしています。 + +このドキュメントは、そのシステムの設計をあなた(Claude Code)と共に進めるための前提情報と要求事項をまとめたものです。 + +あなたのミッションは以下の3点です。 +1. **批判的レビュー**: 下記に記載された「Geminiの提案」「Antigravityの提案」の2つについて、技術的実現性・運用保守性・「Neo-Minimalism 2.0」への適合性の観点から容赦なくレビューしてください。 +2. **ゼロベースでの再設計**: それらを踏まえ、よりシンプルで堅牢、かつユーザーの入力負担が極限までゼロに近づく「第3のベストプラクティス」があれば提案してください。 +3. **安全な実装**: 方針決定後、既存アプリ群(posimai-hotels等)に一切の悪影響を与えない完全分離された形でプロトタイプを構築してください。 + +--- + +## 1. プロジェクトの要件とコンテキスト +- **ターゲット層**: DXに挫折した中小企業担当者、コードは書けないがAI開発に興味がある層。 +- **コンセプト(ペルソナ像の極意)**: **「Architect without Code (コードは書けないが、アーキテクチャは支配する)」** + - 単なる「ITが苦手な非エンジニア」のステレオタイプではない。**実はCUI(黒い画面)やハッカー的な美学、サイバー感(バイナリー等)が大好き**という独自のギャップを持つ。コードは自筆しないが、ターミナルで流れるログを見たりAIと高度な議論を戦わせることに熱狂するタイプ。 +- **インプットのバランス(自動抽出と手動のハイブリッド)**: 基本的な「すったもんだの軌跡」や「感情の揺れ(エラーに絶望する・サイバーなUIに喜ぶ等)」は、**手動入力に依存せず、無意識のログ(普段AIと交わしているチャットの熱量やコマンド履歴)**からAI自身が自動抽出し、ベースとなる案を勝手に作り上げることを理想とする。しかし、同時に**ユーザー自身が「一言添えたい」と思った時に手動で感情やポエムを注入できる柔軟な仕組み(`diary.md`等)も共存**させること。 +- **実行環境制限**: 既存のアプリ群(`apps/` や既存ディレクトリ)には一切の干渉・改変を行わず、物理的に完全に隔離された専用ディレクトリ(例: `tools/posimai-scribe/`)を作成し、その内部のみで魔法(システム)を構築すること。 + +--- + +## 2. 過去のAIからの提案内容 + +### 【案A:Geminiの提案(インビジブル・ロギング&API連携型)】 +- **仕組み**: + - Synology NAS上にn8nを構築。 + - Web上のGemini/Claudeとの対話履歴をスクレイピング/APIで自動抽出。 + - GitHubバックアップやVercelデプロイWebhookと情報を結合。 + - APIを使ってnoteへ自動投稿(非公開API/自動ブラウザ操作等で回避)。 +- **Antigravity(Gemini 3.1 Pro)からの懸念**: + - Web版チャット履歴の安定した自動取得はAPIが存在しないため非常に脆い。 + - noteの連携はBANリスクとUI変更に弱く保守コストが甚大。全体的に「Over Engineering」になりがち。 +- **Gemini自身からの追加クリティカル・レビュー**: + - **「認証の壁」**: ヘッドレスブラウザ等でのログイン維持はメンテナンス地獄を招き、Posimaiの「手間をかけない」哲学に反する。 + - **「データの断片化」**: noteへの投稿は資産が第三者プラットフォームに紐付くため、「Your data is yours (データ主権)」という自由追求の思想と衝突する。 + +### 【案B:Antigravityの提案(ローカルGit・ファイル駆動型)】 +- **仕組み**: + - Webチャットを追うのを諦め、「ローカルの記録」をソースの真実とする。 + - `posimai-project` 内のGit差分(Diff)、AIとの作業記録(`task.md`や`claude-memory`)、および追加の `diary.md`(ポロリと感情を書く用)をソースとする。 + - 1日の終わりに特定のNodeスクリプト(例: `scripts/blog-generator.js`)を叩くと、AI(ClaudeのAPI等)が上記を読み込んでMarkdown記事を自動生成する。 + - 生成されたMarkdownをZenn(GitHub連携対応)や新規のPWA(posimai-journal)にPushすることで完全自動デプロイ。 +- **Antigravityからの懸念**: + - 安定・確実だが、「対話中の生々しいやり取り(AIが嘘をついた等)」はコード差分だけからは拾いにくく、`diary.md` への書き込み等に依存してしまう可能性あり。 +- **Geminiからの追加クリティカル・レビュー**: + - **「文脈の欠落」**: GitのDiff(差分)は「何をしたか」は語るが、「なぜそうしたか(AIとの議論の末の決断)」というドラマが抜け落ちる。 + - **「感情の強制」**: `diary.md` への記入すら、調子が悪い時には「タスク」に感じてしまい、結果的にロギングが破綻する完全自動化に反する懸念。 + +--- + +## 3. Claude Codeへの「第3の答え」への期待値(ヒント) + +Claude Codeには、上記の制約と批判を踏まえ、以下の「技術的な飛躍」を組み込んだゼロベースの議論を期待します。 + +1. **MCP(Model Context Protocol)の活用**: + 現在構築済みのSynology NAS上のMCPサーバーや、Cursor/Claude Code自体のコンテキスト保持機能を逆利用し、**「AIが自分自身の思考ログをエクスポートする」**仕組みを模索することは可能か? +2. **「Shadow Logging」**: + 開発中にターミナルに流れるエラーログや、AIへのプロンプトを「バックグラウンドで一時ファイルに追記し続ける」常駐デーモン(監視プログラム)を作成し、`diary.md` を書く手間すら完全に省くアプローチは可能か? + +--- + +## 4. Claude Codeへの最初のアクション要求 + +1. このファイルを読み込み、案Aと案Bについて独自の視点も交えて**批判的に分析**し、第3の道の可能性を議論してください。 +2. これらを統合・昇華させた、今の `posimai-project` のエコシステムに最も適した**「アーキテクチャ案」**を提案してください。 +3. ユーザーの承認後、「既存アプリは神域である」という絶対ルールの元、物理的に隔離された `tools/posimai-scribe/` ディレクトリ下での開発に着手してください。 diff --git a/docs/neo-minimalism-strategy.md b/docs/neo-minimalism-strategy.md new file mode 100644 index 00000000..d67b4123 --- /dev/null +++ b/docs/neo-minimalism-strategy.md @@ -0,0 +1,54 @@ +# Posimai Project - Neo-Minimalism 2.0 と事業アーキテクチャ指針 + +最終更新: 2026-04-02 +作成経緯: 開発者mai、Gemini、Antigravityとの間で完結した事業戦略・UX・インフラ設計の最終合意内容の記録。Claude Code(Ubuntu PC側)へのコンテキスト共有用。 + +--- + +## 1. 哲学:Neo-Minimalism 2.0 の定義 +「Neo-Minimalism 2.0」とは、単なる視覚的な簡素化ではなく、個人のデジタル帝国を築くための生存戦略と自由を最大化する独自のアーキテクチャ指針である。 + +### ① Visual Layer(クリーンな情報整理) +- **Teal (#6EE7B7) の一貫性**: 視認性が高く、清潔感と先進性を与えるアクセントカラーのみを使用。 +- **余白の機能化**: 装飾的グラフィックを排除し、余白そのものを情報区切りのUIとして扱う。 +- **絵文字の完全排除**: プロ意識と理知的な印象を保ち、情報のノイズを防ぐ。 + +### ② Architecture Layer(セルフホストと自立) +- **脱ベンダーロックイン**: Firebase等に依存せず、VPS・Synology NAS (Docker)・PostgreSQLを掌握。 +- **PWAファースト**: App Storeの審査に縛られず、Web技術でネイティブ体験を最小構成で届ける。 +- **最小限の認証**: Magic Link + Passkey(WebAuthn)を採用し、ユーザーからパスワード管理の負担を消し去る。 + +### ③ Business Layer(誠実なマネタイズ) +- **広告・サブスクの排除**: ユーザーの注意力や精神的自由を奪うモデルを徹底排除。 +- **データ主権 (Local-first)**: ユーザーのデータを人質に取らない。 +- **BYOK (Bring Your Own Key)**: 非エンジニアには隠しつつも、設定奥底に自前APIキー持ち込みの裏口を用意し、究極の永続性を保証する。 + +--- + +## 2. アプリ統合戦略:デジタル帝国の分権 +巨大な一つのスーパーアプリ(ポータル)を作ることはNeo-Minimalism 2.0に反する。Unix哲学(1つのアプリは1つのことだけを完璧に行う)に従い、疎結合なエコシステムを形成する。 + +- **細胞群 (Micro PWA Apps)**: 1アプリ1機能に徹底的に特化したツール群(Brain, Habit, Pulse等)。 +- **神経系 / クライアントOS (Posimai Veil)**: 各アプリへのアクセスを統合し、デスクトップ環境における「個人のコマンドセンター(OS層)」として機能する。単なるPWAランチャー(认知的シェルター)を超え、将来的にはElectronベースでシステムトレイ常駐・グローバルクイックキャプチャ・パーソナルアナリティクス・オフライン同期を備える。デスクトップ環境における「信頼のアンカー」となる。 +- **Invisible Auth(摩擦ゼロの回遊)**: 全PWAを `posimai.soar-enrich.com/apps/*` の共通ドメイン下に配置し、First-party Cookie / LocalStorageを共有。別アプリへ飛んでもログイン・決済の壁を生じさせない。(※前提条件:ワイルドカードDNS `*.posimai.soar-enrich.com` の設定およびCookie方式への移行完了が必須。現在Eiji氏への最優先依頼タスク。) +- **信頼のアンカー(Tier 1)**: Flutter製の日本酒アプリ等をApp Storeに置くことで、権威性とトラスト証明書として機能させ、新規流入をPWA経済圏へ誘引する。 + +--- + +## 3. 販売構造:Invisible Store(透明なストア) +トップに「ストア画面」を置くことで生じる認知負荷とコンバージョンの低下を防ぐと同時に、「信頼されない」というワンコイン・インディーズのリスクを構造で解決する。 + +- **入り口は特化型LP(B案)**: 流入先は各製品(Ponshu Room等)の課題解決に100%特化したページとする。 +- **品質保証の透かし**: LPのフッターやヘッダーに「Posimai Standard」バッジ(広告・サブスクなし、データ主権の明示)を置き、巨大な信用基盤の証とする。 +- **サンクスページでのクロスセル**: 決済完了画面にて、他のアプリを含む「Posimai Store」を展開し、信頼を獲得したユーザーに対してのみ回遊(クロスセル)を促す。 + +--- + +## 4. マネタイズとUX:ハイブリッド・クレジットと優雅な機能後退 +AI等の変動コストが発生するアプリにおける「買い切りの赤字リスク」と「サブスクの摩擦」を調和させる究極のソリューション。 + +- **初期パッケージ化**: 基本機能の買い切り価格(例: 500円)に「標準ユーザーが数年消費しないほど十分なAI処理枠(例: 500スキャン分)」を同梱。 +- **使い切った後の従量課金**: 追加枠が必要なヘビーユーザーにのみ都度課金(トークン)を促す。 +- **UXの魔法(メタファー)**: クレジットの残数を「チケット」や「スキャン回数」と呼ばず、「AIセラーの拡張領域」など独自のポジティブな概念に置き換える。 +- **不可視化**: 残数は設定の最深部に隠し、普段の体験では一切意識させない。枯渇直前にのみ情緒的な表現のプログレスバーで知らせる。 +- **優雅な機能後退 (Graceful Degradation)**: AI枠を使い切っても絶対にアプリをロック(エラー表示)しない。カメラボタンが自動解析モードから「手作業の手動入力モード」へシームレスかつ優雅にダウングレードするだけで、ユーザーは永久に無課金でもデータを記録し続けられる。 diff --git a/docs/postgresql-mcp-setup.md b/docs/postgresql-mcp-setup.md new file mode 100644 index 00000000..6a8e5770 --- /dev/null +++ b/docs/postgresql-mcp-setup.md @@ -0,0 +1,142 @@ +# PostgreSQL MCP セットアップガイド + +**目的:** Claude Code から VPS の PostgreSQL 16(posimai_brain DB)に直接接続し、スキーマ確認・データ参照を自然言語で行えるようにする。 + +--- + +## アーキテクチャ + +``` +Windows (Claude Code) + ↓ SSH トンネル(Tailscale 経由) +VPS (posimai-lab.tail72e846.ts.net) + ↓ Docker 内部ネットワーク +PostgreSQL 16 コンテナ + → DB: posimai_brain +``` + +--- + +## ステップ 1: 読み取り専用ユーザーの作成(VPS で一度だけ実行) + +VPS に SSH ログイン後、PostgreSQL コンテナに接続して実行する。 + +```bash +# VPS SSH ログイン +ssh @posimai-lab.tail72e846.ts.net + +# PostgreSQL コンテナに接続 +docker exec -it psql -U postgres + +# 読み取り専用ユーザー作成 +CREATE USER posimai_readonly WITH PASSWORD 'CHOOSE_STRONG_PASSWORD'; +GRANT CONNECT ON DATABASE posimai_brain TO posimai_readonly; +\c posimai_brain +GRANT USAGE ON SCHEMA public TO posimai_readonly; +GRANT SELECT ON ALL TABLES IN SCHEMA public TO posimai_readonly; +ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON TABLES TO posimai_readonly; + +# 確認 +\du posimai_readonly +\q +``` + +**注意:** パスワードは安全なランダム文字列を設定すること。このユーザーは SELECT のみ可能(INSERT/UPDATE/DELETE 不可)。 + +--- + +## ステップ 2: SSH トンネルの設定(Claude Code 起動前) + +Claude Code セッションを開始する前に、以下のコマンドでトンネルを張る。 + +```bash +# バックグラウンドでトンネルを張る(セッション維持) +ssh -N -L 5432:localhost:5432 @posimai-lab.tail72e846.ts.net & + +# または WSL2 / PowerShell で常時実行 +# Windows の場合は Windows Terminal で別タブで実行しておく +``` + +**VPS の PostgreSQL コンテナが localhost:5432 を公開しているか確認:** +```bash +ssh @posimai-lab.tail72e846.ts.net "docker ps | grep postgres" +# ポートが 0.0.0.0:5432 または 127.0.0.1:5432 で LISTEN していることを確認 +``` + +--- + +## ステップ 3: .claude/settings.json への MCP 設定 + +`posimai-project/.claude/settings.json` の `mcpServers` セクションを追加済み。 +**パスワードのみ実際の値に変更すること(このファイルは git 管理外)。** + +```json +{ + "mcpServers": { + "postgres": { + "command": "npx", + "args": [ + "-y", + "@modelcontextprotocol/server-postgres", + "postgresql://posimai_readonly:CHANGE_ME@localhost:5432/posimai_brain" + ] + } + } +} +``` + +--- + +## 使用例(設定完了後) + +Claude Code のセッション内で以下のような質問が自然言語でできるようになる: + +``` +# スキーマ確認 +「posimai_brain にどんなテーブルがある?」 + +# カラム確認 +「users テーブルの構造を教えて」 + +# データ確認(読み取りのみ) +「habit テーブルに最近登録された習慣を5件見せて」 + +# デバッグ支援 +「feed テーブルで unread_count が NULL のレコードはいくつある?」 +``` + +--- + +## セキュリティ注意事項 + +| 項目 | 対応 | +|------|------| +| 認証情報の保管 | `.claude/settings.json`(git 管理外)のみに記載 | +| アクセス制限 | Tailscale VPN 経由のみ(公開ポートなし)| +| 権限 | SELECT のみ(DDL・DML 不可)| +| パスワード | 強力なランダム文字列を設定 | +| CLAUDE.md | DB スキーマ変更は mai 確認必須ルールを維持 | + +--- + +## コンテナ名の確認方法 + +VPS 上で以下を実行: +```bash +docker ps --format "table {{.Names}}\t{{.Ports}}" | grep -i postgres +``` + +`deploy-server.sh` または `docker-compose.yml` でコンテナ名を確認することもできる。 + +--- + +## トラブルシューティング + +**接続できない場合:** +1. SSH トンネルが起動しているか確認: `ss -tlnp | grep 5432` +2. VPS PostgreSQL コンテナが起動しているか確認 +3. ポートフォワード先が正しいか確認(Docker ネットワーク設定による) + +**MCP サーバーが起動しない場合:** +1. `npx -y @modelcontextprotocol/server-postgres --help` が動作するか確認 +2. Node.js / npm がインストールされているか確認 diff --git a/package.json b/package.json index 48aa671c..85c5317e 100644 --- a/package.json +++ b/package.json @@ -1,9 +1,11 @@ { "name": "posimai-root", "private": true, + "type": "module", "scripts": { "deploy": "git push gitea main && git push github main", "deploy:dev": "bash scripts/deploy-dev.sh", - "deploy:vps": "bash deploy-server.sh" + "deploy:vps": "bash deploy-server.sh", + "check:registrations": "node scripts/check-registrations.js" } } diff --git a/posimai-atlas b/posimai-atlas new file mode 160000 index 00000000..09dd315c --- /dev/null +++ b/posimai-atlas @@ -0,0 +1 @@ +Subproject commit 09dd315c5ffbc8e7faf49e01cdf700cd9d7ae4f7 diff --git a/posimai-brief b/posimai-brief new file mode 160000 index 00000000..1337c280 --- /dev/null +++ b/posimai-brief @@ -0,0 +1 @@ +Subproject commit 1337c280b07a76ca54b2f5438f4f4672410378d2 diff --git a/posimai-dev/package-lock.json b/posimai-dev/package-lock.json new file mode 100644 index 00000000..40908848 --- /dev/null +++ b/posimai-dev/package-lock.json @@ -0,0 +1,855 @@ +{ + "name": "posimai-dev", + "version": "0.1.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "posimai-dev", + "version": "0.1.0", + "dependencies": { + "express": "4.19.2", + "node-pty": "1.0.0", + "ws": "8.18.0" + } + }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "license": "MIT", + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", + "license": "MIT" + }, + "node_modules/body-parser": { + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.2.tgz", + "integrity": "sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==", + "license": "MIT", + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.5", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.11.0", + "raw-body": "2.5.2", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "license": "MIT", + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz", + "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==", + "license": "MIT" + }, + "node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "license": "MIT", + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "license": "MIT" + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", + "license": "MIT" + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/express": { + "version": "4.19.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz", + "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==", + "license": "MIT", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.2", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.6.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "license": "MIT", + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "license": "MIT", + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "license": "MIT", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "license": "ISC" + }, + "node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "license": "MIT", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==", + "license": "MIT" + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "license": "MIT", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "license": "MIT", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT" + }, + "node_modules/nan": { + "version": "2.26.2", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.26.2.tgz", + "integrity": "sha512-0tTvBTYkt3tdGw22nrAy50x7gpbGCCFH3AFcyS5WiUu7Eu4vWlri1woE6qHBSfy11vksDqkiwjOnlR7WV8G1Hw==", + "license": "MIT" + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/node-pty": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-pty/-/node-pty-1.0.0.tgz", + "integrity": "sha512-wtBMWWS7dFZm/VgqElrTvtfMq4GzJ6+edFI0Y0zyzygUSZMgZdraDUMUhCIvkjhJjme15qWmbyJbtAx4ot4uZA==", + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "nan": "^2.17.0" + } + }, + "node_modules/object-inspect": { + "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "license": "MIT", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==", + "license": "MIT" + }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "license": "MIT", + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "license": "BSD-3-Clause", + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", + "license": "MIT", + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "license": "MIT" + }, + "node_modules/send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "license": "MIT", + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, + "node_modules/serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "license": "MIT", + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", + "license": "ISC" + }, + "node_modules/side-channel": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "license": "MIT", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "license": "MIT", + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "license": "MIT", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/ws": { + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz", + "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", + "license": "MIT", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + } + } +} diff --git a/posimai-guard b/posimai-guard index 26cacc8c..151eb32e 160000 --- a/posimai-guard +++ b/posimai-guard @@ -1 +1 @@ -Subproject commit 26cacc8cec858ba8d71124ed93440f8601979d6e +Subproject commit 151eb32e468ccb79a6f6373aedb0ce62ae993997 diff --git a/posimai-guard-app/package.json b/posimai-guard-app/package.json index ab6937b1..e93c6534 100644 --- a/posimai-guard-app/package.json +++ b/posimai-guard-app/package.json @@ -3,26 +3,12 @@ "version": "0.1.0", "private": true, "scripts": { - "dev": "vite", - "build": "tsc && vite build", "tauri": "tauri", - "tauri:dev": "tauri dev", - "tauri:build": "tauri build" - }, - "dependencies": { - "@tauri-apps/api": "^2.3.0", - "@tauri-apps/plugin-dialog": "^2.2.0", - "@tauri-apps/plugin-fs": "^2.2.0", - "@tauri-apps/plugin-shell": "^2.2.0", - "react": "^19.0.0", - "react-dom": "^19.0.0" + "dev": "tauri dev", + "build": "tauri build" }, + "dependencies": {}, "devDependencies": { - "@tauri-apps/cli": "^2.3.1", - "@types/react": "^19.0.0", - "@types/react-dom": "^19.0.0", - "@vitejs/plugin-react": "^4.3.4", - "typescript": "^5.7.2", - "vite": "^6.0.7" + "@tauri-apps/cli": "^2.3.1" } } diff --git a/posimai-guard-app/src-tauri/Cargo.lock b/posimai-guard-app/src-tauri/Cargo.lock new file mode 100644 index 00000000..b25696bf --- /dev/null +++ b/posimai-guard-app/src-tauri/Cargo.lock @@ -0,0 +1,5162 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 4 + +[[package]] +name = "adler2" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa" + +[[package]] +name = "aho-corasick" +version = "1.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301" +dependencies = [ + "memchr", +] + +[[package]] +name = "alloc-no-stdlib" +version = "2.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc7bb162ec39d46ab1ca8c77bf72e890535becd1751bb45f64c597edb4c8c6b3" + +[[package]] +name = "alloc-stdlib" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94fb8275041c72129eb51b7d0322c29b8387a0386127718b096429201a5d6ece" +dependencies = [ + "alloc-no-stdlib", +] + +[[package]] +name = "android_system_properties" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" +dependencies = [ + "libc", +] + +[[package]] +name = "anyhow" +version = "1.0.102" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f202df86484c868dbad7eaa557ef785d5c66295e41b460ef922eca0723b842c" + +[[package]] +name = "atk" +version = "0.18.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "241b621213072e993be4f6f3a9e4b45f65b7e6faad43001be957184b7bb1824b" +dependencies = [ + "atk-sys", + "glib", + "libc", +] + +[[package]] +name = "atk-sys" +version = "0.18.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c5e48b684b0ca77d2bbadeef17424c2ea3c897d44d566a1617e7e8f30614d086" +dependencies = [ + "glib-sys", + "gobject-sys", + "libc", + "system-deps", +] + +[[package]] +name = "atomic-waker" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" + +[[package]] +name = "autocfg" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" + +[[package]] +name = "base64" +version = "0.21.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" + +[[package]] +name = "base64" +version = "0.22.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" + +[[package]] +name = "bit-set" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3" +dependencies = [ + "bit-vec", +] + +[[package]] +name = "bit-vec" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7" + +[[package]] +name = "bitflags" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" + +[[package]] +name = "bitflags" +version = "2.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "843867be96c8daad0d758b57df9392b6d8d271134fce549de6ce169ff98a92af" +dependencies = [ + "serde_core", +] + +[[package]] +name = "block-buffer" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" +dependencies = [ + "generic-array", +] + +[[package]] +name = "block2" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cdeb9d870516001442e364c5220d3574d2da8dc765554b4a617230d33fa58ef5" +dependencies = [ + "objc2", +] + +[[package]] +name = "brotli" +version = "8.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4bd8b9603c7aa97359dbd97ecf258968c95f3adddd6db2f7e7a5bef101c84560" +dependencies = [ + "alloc-no-stdlib", + "alloc-stdlib", + "brotli-decompressor", +] + +[[package]] +name = "brotli-decompressor" +version = "5.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "874bb8112abecc98cbd6d81ea4fa7e94fb9449648c93cc89aa40c81c24d7de03" +dependencies = [ + "alloc-no-stdlib", + "alloc-stdlib", +] + +[[package]] +name = "bumpalo" +version = "3.20.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d20789868f4b01b2f2caec9f5c4e0213b41e3e5702a50157d699ae31ced2fcb" + +[[package]] +name = "bytemuck" +version = "1.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8efb64bd706a16a1bdde310ae86b351e4d21550d98d056f22f8a7f7a2183fec" + +[[package]] +name = "byteorder" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" + +[[package]] +name = "bytes" +version = "1.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e748733b7cbc798e1434b6ac524f0c1ff2ab456fe201501e6497c8417a4fc33" +dependencies = [ + "serde", +] + +[[package]] +name = "cairo-rs" +version = "0.18.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ca26ef0159422fb77631dc9d17b102f253b876fe1586b03b803e63a309b4ee2" +dependencies = [ + "bitflags 2.11.0", + "cairo-sys-rs", + "glib", + "libc", + "once_cell", + "thiserror 1.0.69", +] + +[[package]] +name = "cairo-sys-rs" +version = "0.18.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "685c9fa8e590b8b3d678873528d83411db17242a73fccaed827770ea0fedda51" +dependencies = [ + "glib-sys", + "libc", + "system-deps", +] + +[[package]] +name = "camino" +version = "1.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e629a66d692cb9ff1a1c664e41771b3dcaf961985a9774c0eb0bd1b51cf60a48" +dependencies = [ + "serde_core", +] + +[[package]] +name = "cargo-platform" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e35af189006b9c0f00a064685c727031e3ed2d8020f7ba284d78cc2671bd36ea" +dependencies = [ + "serde", +] + +[[package]] +name = "cargo_metadata" +version = "0.19.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd5eb614ed4c27c5d706420e4320fbe3216ab31fa1c33cd8246ac36dae4479ba" +dependencies = [ + "camino", + "cargo-platform", + "semver", + "serde", + "serde_json", + "thiserror 2.0.18", +] + +[[package]] +name = "cargo_toml" +version = "0.22.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "374b7c592d9c00c1f4972ea58390ac6b18cbb6ab79011f3bdc90a0b82ca06b77" +dependencies = [ + "serde", + "toml 0.9.12+spec-1.1.0", +] + +[[package]] +name = "cc" +version = "1.2.60" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43c5703da9466b66a946814e1adf53ea2c90f10063b86290cc9eb67ce3478a20" +dependencies = [ + "find-msvc-tools", + "shlex", +] + +[[package]] +name = "cesu8" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" + +[[package]] +name = "cfb" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d38f2da7a0a2c4ccf0065be06397cc26a81f4e528be095826eee9d4adbb8c60f" +dependencies = [ + "byteorder", + "fnv", + "uuid", +] + +[[package]] +name = "cfg-expr" +version = "0.15.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d067ad48b8650848b989a59a86c6c36a995d02d2bf778d45c3c5d57bc2718f02" +dependencies = [ + "smallvec", + "target-lexicon", +] + +[[package]] +name = "cfg-if" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" + +[[package]] +name = "chrono" +version = "0.4.44" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c673075a2e0e5f4a1dde27ce9dee1ea4558c7ffe648f576438a20ca1d2acc4b0" +dependencies = [ + "iana-time-zone", + "num-traits", + "serde", + "windows-link 0.2.1", +] + +[[package]] +name = "combine" +version = "4.6.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd" +dependencies = [ + "bytes", + "memchr", +] + +[[package]] +name = "convert_case" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" + +[[package]] +name = "cookie" +version = "0.18.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ddef33a339a91ea89fb53151bd0a4689cfce27055c291dfa69945475d22c747" +dependencies = [ + "time", + "version_check", +] + +[[package]] +name = "core-foundation" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2a6cd9ae233e7f62ba4e9353e81a88df7fc8a5987b8d445b4d90c879bd156f6" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "core-foundation-sys" +version = "0.8.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" + +[[package]] +name = "core-graphics" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "064badf302c3194842cf2c5d61f56cc88e54a759313879cdf03abdd27d0c3b97" +dependencies = [ + "bitflags 2.11.0", + "core-foundation", + "core-graphics-types", + "foreign-types", + "libc", +] + +[[package]] +name = "core-graphics-types" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d44a101f213f6c4cdc1853d4b78aef6db6bdfa3468798cc1d9912f4735013eb" +dependencies = [ + "bitflags 2.11.0", + "core-foundation", + "libc", +] + +[[package]] +name = "cpufeatures" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280" +dependencies = [ + "libc", +] + +[[package]] +name = "crc32fast" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9481c1c90cbf2ac953f07c8d4a58aa3945c425b7185c9154d67a65e4230da511" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "crossbeam-channel" +version = "0.5.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "82b8f8f868b36967f9606790d1903570de9ceaf870a7bf9fbbd3016d636a2cb2" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-utils" +version = "0.8.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" + +[[package]] +name = "crypto-common" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "78c8292055d1c1df0cce5d180393dc8cce0abec0a7102adb6c7b1eef6016d60a" +dependencies = [ + "generic-array", + "typenum", +] + +[[package]] +name = "cssparser" +version = "0.29.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f93d03419cb5950ccfd3daf3ff1c7a36ace64609a1a8746d493df1ca0afde0fa" +dependencies = [ + "cssparser-macros", + "dtoa-short", + "itoa", + "matches", + "phf 0.10.1", + "proc-macro2", + "quote", + "smallvec", + "syn 1.0.109", +] + +[[package]] +name = "cssparser" +version = "0.36.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dae61cf9c0abb83bd659dab65b7e4e38d8236824c85f0f804f173567bda257d2" +dependencies = [ + "cssparser-macros", + "dtoa-short", + "itoa", + "phf 0.13.1", + "smallvec", +] + +[[package]] +name = "cssparser-macros" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "13b588ba4ac1a99f7f2964d24b3d896ddc6bf847ee3855dbd4366f058cfcd331" +dependencies = [ + "quote", + "syn 2.0.117", +] + +[[package]] +name = "ctor" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32a2785755761f3ddc1492979ce1e48d2c00d09311c39e4466429188f3dd6501" +dependencies = [ + "quote", + "syn 2.0.117", +] + +[[package]] +name = "darling" +version = "0.23.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "25ae13da2f202d56bd7f91c25fba009e7717a1e4a1cc98a76d844b65ae912e9d" +dependencies = [ + "darling_core", + "darling_macro", +] + +[[package]] +name = "darling_core" +version = "0.23.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9865a50f7c335f53564bb694ef660825eb8610e0a53d3e11bf1b0d3df31e03b0" +dependencies = [ + "ident_case", + "proc-macro2", + "quote", + "strsim", + "syn 2.0.117", +] + +[[package]] +name = "darling_macro" +version = "0.23.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3984ec7bd6cfa798e62b4a642426a5be0e68f9401cfc2a01e3fa9ea2fcdb8d" +dependencies = [ + "darling_core", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "deranged" +version = "0.5.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7cd812cc2bc1d69d4764bd80df88b4317eaef9e773c75226407d9bc0876b211c" +dependencies = [ + "powerfmt", + "serde_core", +] + +[[package]] +name = "derive_more" +version = "0.99.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6edb4b64a43d977b8e99788fe3a04d483834fba1215a7e02caa415b626497f7f" +dependencies = [ + "convert_case", + "proc-macro2", + "quote", + "rustc_version", + "syn 2.0.117", +] + +[[package]] +name = "derive_more" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d751e9e49156b02b44f9c1815bcb94b984cdcc4396ecc32521c739452808b134" +dependencies = [ + "derive_more-impl", +] + +[[package]] +name = "derive_more-impl" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "799a97264921d8623a957f6c3b9011f3b5492f557bbb7a5a19b7fa6d06ba8dcb" +dependencies = [ + "proc-macro2", + "quote", + "rustc_version", + "syn 2.0.117", +] + +[[package]] +name = "digest" +version = "0.10.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" +dependencies = [ + "block-buffer", + "crypto-common", +] + +[[package]] +name = "dirs" +version = "6.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3e8aa94d75141228480295a7d0e7feb620b1a5ad9f12bc40be62411e38cce4e" +dependencies = [ + "dirs-sys", +] + +[[package]] +name = "dirs-sys" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e01a3366d27ee9890022452ee61b2b63a67e6f13f58900b651ff5665f0bb1fab" +dependencies = [ + "libc", + "option-ext", + "redox_users", + "windows-sys 0.61.2", +] + +[[package]] +name = "dispatch2" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e0e367e4e7da84520dedcac1901e4da967309406d1e51017ae1abfb97adbd38" +dependencies = [ + "bitflags 2.11.0", + "block2", + "libc", + "objc2", +] + +[[package]] +name = "displaydoc" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "dlopen2" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e2c5bd4158e66d1e215c49b837e11d62f3267b30c92f1d171c4d3105e3dc4d4" +dependencies = [ + "dlopen2_derive", + "libc", + "once_cell", + "winapi", +] + +[[package]] +name = "dlopen2_derive" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fbbb781877580993a8707ec48672673ec7b81eeba04cfd2310bd28c08e47c8f" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "dom_query" +version = "0.27.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "521e380c0c8afb8d9a1e83a1822ee03556fc3e3e7dbc1fd30be14e37f9cb3f89" +dependencies = [ + "bit-set", + "cssparser 0.36.0", + "foldhash 0.2.0", + "html5ever 0.38.0", + "precomputed-hash", + "selectors 0.36.1", + "tendril 0.5.0", +] + +[[package]] +name = "dpi" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d8b14ccef22fc6f5a8f4d7d768562a182c04ce9a3b3157b91390b52ddfdf1a76" +dependencies = [ + "serde", +] + +[[package]] +name = "dtoa" +version = "1.0.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c3cf4824e2d5f025c7b531afcb2325364084a16806f6d47fbc1f5fbd9960590" + +[[package]] +name = "dtoa-short" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd1511a7b6a56299bd043a9c167a6d2bfb37bf84a6dfceaba651168adfb43c87" +dependencies = [ + "dtoa", +] + +[[package]] +name = "dunce" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" + +[[package]] +name = "dyn-clone" +version = "1.0.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0881ea181b1df73ff77ffaaf9c7544ecc11e82fba9b5f27b262a3c73a332555" + +[[package]] +name = "embed-resource" +version = "3.0.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "63a1d0de4f2249aa0ff5884d7080814f446bb241a559af6c170a41e878ed2d45" +dependencies = [ + "cc", + "memchr", + "rustc_version", + "toml 0.9.12+spec-1.1.0", + "vswhom", + "winreg", +] + +[[package]] +name = "embed_plist" +version = "1.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ef6b89e5b37196644d8796de5268852ff179b44e96276cf4290264843743bb7" + +[[package]] +name = "encoding_rs" +version = "0.8.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75030f3c4f45dafd7586dd6780965a8c7e8e285a5ecb86713e63a79c5b2766f3" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "equivalent" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" + +[[package]] +name = "erased-serde" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2add8a07dd6a8d93ff627029c51de145e12686fbc36ecb298ac22e74cf02dec" +dependencies = [ + "serde", + "serde_core", + "typeid", +] + +[[package]] +name = "errno" +version = "0.3.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" +dependencies = [ + "libc", + "windows-sys 0.61.2", +] + +[[package]] +name = "fastrand" +version = "2.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f1f227452a390804cdb637b74a86990f2a7d7ba4b7d5693aac9b4dd6defd8d6" + +[[package]] +name = "fdeflate" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e6853b52649d4ac5c0bd02320cddc5ba956bdb407c4b75a2c6b75bf51500f8c" +dependencies = [ + "simd-adler32", +] + +[[package]] +name = "field-offset" +version = "0.3.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38e2275cc4e4fc009b0669731a1e5ab7ebf11f469eaede2bab9309a5b4d6057f" +dependencies = [ + "memoffset", + "rustc_version", +] + +[[package]] +name = "find-msvc-tools" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5baebc0774151f905a1a2cc41989300b1e6fbb29aff0ceffa1064fdd3088d582" + +[[package]] +name = "flate2" +version = "1.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "843fba2746e448b37e26a819579957415c8cef339bf08564fe8b7ddbd959573c" +dependencies = [ + "crc32fast", + "miniz_oxide", +] + +[[package]] +name = "fnv" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" + +[[package]] +name = "foldhash" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2" + +[[package]] +name = "foldhash" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb" + +[[package]] +name = "foreign-types" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965" +dependencies = [ + "foreign-types-macros", + "foreign-types-shared", +] + +[[package]] +name = "foreign-types-macros" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "foreign-types-shared" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa9a19cbb55df58761df49b23516a86d432839add4af60fc256da840f66ed35b" + +[[package]] +name = "form_urlencoded" +version = "1.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb4cb245038516f5f85277875cdaa4f7d2c9a0fa0468de06ed190163b1581fcf" +dependencies = [ + "percent-encoding", +] + +[[package]] +name = "futf" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df420e2e84819663797d1ec6544b13c5be84629e7bb00dc960d6917db2987843" +dependencies = [ + "mac", + "new_debug_unreachable", +] + +[[package]] +name = "futures-channel" +version = "0.3.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07bbe89c50d7a535e539b8c17bc0b49bdb77747034daa8087407d655f3f7cc1d" +dependencies = [ + "futures-core", +] + +[[package]] +name = "futures-core" +version = "0.3.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7e3450815272ef58cec6d564423f6e755e25379b217b0bc688e295ba24df6b1d" + +[[package]] +name = "futures-executor" +version = "0.3.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baf29c38818342a3b26b5b923639e7b1f4a61fc5e76102d4b1981c6dc7a7579d" +dependencies = [ + "futures-core", + "futures-task", + "futures-util", +] + +[[package]] +name = "futures-io" +version = "0.3.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cecba35d7ad927e23624b22ad55235f2239cfa44fd10428eecbeba6d6a717718" + +[[package]] +name = "futures-macro" +version = "0.3.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e835b70203e41293343137df5c0664546da5745f82ec9b84d40be8336958447b" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "futures-sink" +version = "0.3.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c39754e157331b013978ec91992bde1ac089843443c49cbc7f46150b0fad0893" + +[[package]] +name = "futures-task" +version = "0.3.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "037711b3d59c33004d3856fbdc83b99d4ff37a24768fa1be9ce3538a1cde4393" + +[[package]] +name = "futures-util" +version = "0.3.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "389ca41296e6190b48053de0321d02a77f32f8a5d2461dd38762c0593805c6d6" +dependencies = [ + "futures-core", + "futures-io", + "futures-macro", + "futures-sink", + "futures-task", + "memchr", + "pin-project-lite", + "slab", +] + +[[package]] +name = "fxhash" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c" +dependencies = [ + "byteorder", +] + +[[package]] +name = "gdk" +version = "0.18.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9f245958c627ac99d8e529166f9823fb3b838d1d41fd2b297af3075093c2691" +dependencies = [ + "cairo-rs", + "gdk-pixbuf", + "gdk-sys", + "gio", + "glib", + "libc", + "pango", +] + +[[package]] +name = "gdk-pixbuf" +version = "0.18.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "50e1f5f1b0bfb830d6ccc8066d18db35c487b1b2b1e8589b5dfe9f07e8defaec" +dependencies = [ + "gdk-pixbuf-sys", + "gio", + "glib", + "libc", + "once_cell", +] + +[[package]] +name = "gdk-pixbuf-sys" +version = "0.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f9839ea644ed9c97a34d129ad56d38a25e6756f99f3a88e15cd39c20629caf7" +dependencies = [ + "gio-sys", + "glib-sys", + "gobject-sys", + "libc", + "system-deps", +] + +[[package]] +name = "gdk-sys" +version = "0.18.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c2d13f38594ac1e66619e188c6d5a1adb98d11b2fcf7894fc416ad76aa2f3f7" +dependencies = [ + "cairo-sys-rs", + "gdk-pixbuf-sys", + "gio-sys", + "glib-sys", + "gobject-sys", + "libc", + "pango-sys", + "pkg-config", + "system-deps", +] + +[[package]] +name = "gdkwayland-sys" +version = "0.18.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "140071d506d223f7572b9f09b5e155afbd77428cd5cc7af8f2694c41d98dfe69" +dependencies = [ + "gdk-sys", + "glib-sys", + "gobject-sys", + "libc", + "pkg-config", + "system-deps", +] + +[[package]] +name = "gdkx11" +version = "0.18.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3caa00e14351bebbc8183b3c36690327eb77c49abc2268dd4bd36b856db3fbfe" +dependencies = [ + "gdk", + "gdkx11-sys", + "gio", + "glib", + "libc", + "x11", +] + +[[package]] +name = "gdkx11-sys" +version = "0.18.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e2e7445fe01ac26f11601db260dd8608fe172514eb63b3b5e261ea6b0f4428d" +dependencies = [ + "gdk-sys", + "glib-sys", + "libc", + "system-deps", + "x11", +] + +[[package]] +name = "generic-array" +version = "0.14.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" +dependencies = [ + "typenum", + "version_check", +] + +[[package]] +name = "getrandom" +version = "0.1.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce" +dependencies = [ + "cfg-if", + "libc", + "wasi 0.9.0+wasi-snapshot-preview1", +] + +[[package]] +name = "getrandom" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff2abc00be7fca6ebc474524697ae276ad847ad0a6b3faa4bcb027e9a4614ad0" +dependencies = [ + "cfg-if", + "libc", + "wasi 0.11.1+wasi-snapshot-preview1", +] + +[[package]] +name = "getrandom" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "899def5c37c4fd7b2664648c28120ecec138e4d395b459e5ca34f9cce2dd77fd" +dependencies = [ + "cfg-if", + "libc", + "r-efi 5.3.0", + "wasip2", +] + +[[package]] +name = "getrandom" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0de51e6874e94e7bf76d726fc5d13ba782deca734ff60d5bb2fb2607c7406555" +dependencies = [ + "cfg-if", + "libc", + "r-efi 6.0.0", + "wasip2", + "wasip3", +] + +[[package]] +name = "gio" +version = "0.18.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d4fc8f532f87b79cbc51a79748f16a6828fb784be93145a322fa14d06d354c73" +dependencies = [ + "futures-channel", + "futures-core", + "futures-io", + "futures-util", + "gio-sys", + "glib", + "libc", + "once_cell", + "pin-project-lite", + "smallvec", + "thiserror 1.0.69", +] + +[[package]] +name = "gio-sys" +version = "0.18.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "37566df850baf5e4cb0dfb78af2e4b9898d817ed9263d1090a2df958c64737d2" +dependencies = [ + "glib-sys", + "gobject-sys", + "libc", + "system-deps", + "winapi", +] + +[[package]] +name = "glib" +version = "0.18.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "233daaf6e83ae6a12a52055f568f9d7cf4671dabb78ff9560ab6da230ce00ee5" +dependencies = [ + "bitflags 2.11.0", + "futures-channel", + "futures-core", + "futures-executor", + "futures-task", + "futures-util", + "gio-sys", + "glib-macros", + "glib-sys", + "gobject-sys", + "libc", + "memchr", + "once_cell", + "smallvec", + "thiserror 1.0.69", +] + +[[package]] +name = "glib-macros" +version = "0.18.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0bb0228f477c0900c880fd78c8759b95c7636dbd7842707f49e132378aa2acdc" +dependencies = [ + "heck 0.4.1", + "proc-macro-crate 2.0.2", + "proc-macro-error", + "proc-macro2", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "glib-sys" +version = "0.18.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "063ce2eb6a8d0ea93d2bf8ba1957e78dbab6be1c2220dd3daca57d5a9d869898" +dependencies = [ + "libc", + "system-deps", +] + +[[package]] +name = "glob" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0cc23270f6e1808e30a928bdc84dea0b9b4136a8bc82338574f23baf47bbd280" + +[[package]] +name = "gobject-sys" +version = "0.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0850127b514d1c4a4654ead6dedadb18198999985908e6ffe4436f53c785ce44" +dependencies = [ + "glib-sys", + "libc", + "system-deps", +] + +[[package]] +name = "gtk" +version = "0.18.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fd56fb197bfc42bd5d2751f4f017d44ff59fbb58140c6b49f9b3b2bdab08506a" +dependencies = [ + "atk", + "cairo-rs", + "field-offset", + "futures-channel", + "gdk", + "gdk-pixbuf", + "gio", + "glib", + "gtk-sys", + "gtk3-macros", + "libc", + "pango", + "pkg-config", +] + +[[package]] +name = "gtk-sys" +version = "0.18.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f29a1c21c59553eb7dd40e918be54dccd60c52b049b75119d5d96ce6b624414" +dependencies = [ + "atk-sys", + "cairo-sys-rs", + "gdk-pixbuf-sys", + "gdk-sys", + "gio-sys", + "glib-sys", + "gobject-sys", + "libc", + "pango-sys", + "system-deps", +] + +[[package]] +name = "gtk3-macros" +version = "0.18.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "52ff3c5b21f14f0736fed6dcfc0bfb4225ebf5725f3c0209edeec181e4d73e9d" +dependencies = [ + "proc-macro-crate 1.3.1", + "proc-macro-error", + "proc-macro2", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "hashbrown" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" + +[[package]] +name = "hashbrown" +version = "0.15.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9229cfe53dfd69f0609a49f65461bd93001ea1ef889cd5529dd176593f5338a1" +dependencies = [ + "foldhash 0.1.5", +] + +[[package]] +name = "hashbrown" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4f467dd6dccf739c208452f8014c75c18bb8301b050ad1cfb27153803edb0f51" + +[[package]] +name = "heck" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" + +[[package]] +name = "heck" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" + +[[package]] +name = "hex" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" + +[[package]] +name = "html5ever" +version = "0.29.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3b7410cae13cbc75623c98ac4cbfd1f0bedddf3227afc24f370cf0f50a44a11c" +dependencies = [ + "log", + "mac", + "markup5ever 0.14.1", + "match_token", +] + +[[package]] +name = "html5ever" +version = "0.38.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1054432bae2f14e0061e33d23402fbaa67a921d319d56adc6bcf887ddad1cbc2" +dependencies = [ + "log", + "markup5ever 0.38.0", +] + +[[package]] +name = "http" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3ba2a386d7f85a81f119ad7498ebe444d2e22c2af0b86b069416ace48b3311a" +dependencies = [ + "bytes", + "itoa", +] + +[[package]] +name = "http-body" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" +dependencies = [ + "bytes", + "http", +] + +[[package]] +name = "http-body-util" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b021d93e26becf5dc7e1b75b1bed1fd93124b374ceb73f43d4d4eafec896a64a" +dependencies = [ + "bytes", + "futures-core", + "http", + "http-body", + "pin-project-lite", +] + +[[package]] +name = "httparse" +version = "1.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6dbf3de79e51f3d586ab4cb9d5c3e2c14aa28ed23d180cf89b4df0454a69cc87" + +[[package]] +name = "hyper" +version = "1.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6299f016b246a94207e63da54dbe807655bf9e00044f73ded42c3ac5305fbcca" +dependencies = [ + "atomic-waker", + "bytes", + "futures-channel", + "futures-core", + "http", + "http-body", + "httparse", + "itoa", + "pin-project-lite", + "smallvec", + "tokio", + "want", +] + +[[package]] +name = "hyper-util" +version = "0.1.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96547c2556ec9d12fb1578c4eaf448b04993e7fb79cbaad930a656880a6bdfa0" +dependencies = [ + "base64 0.22.1", + "bytes", + "futures-channel", + "futures-util", + "http", + "http-body", + "hyper", + "ipnet", + "libc", + "percent-encoding", + "pin-project-lite", + "socket2", + "tokio", + "tower-service", + "tracing", +] + +[[package]] +name = "iana-time-zone" +version = "0.1.65" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e31bc9ad994ba00e440a8aa5c9ef0ec67d5cb5e5cb0cc7f8b744a35b389cc470" +dependencies = [ + "android_system_properties", + "core-foundation-sys", + "iana-time-zone-haiku", + "js-sys", + "log", + "wasm-bindgen", + "windows-core 0.62.2", +] + +[[package]] +name = "iana-time-zone-haiku" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" +dependencies = [ + "cc", +] + +[[package]] +name = "ico" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3e795dff5605e0f04bff85ca41b51a96b83e80b281e96231bcaaf1ac35103371" +dependencies = [ + "byteorder", + "png", +] + +[[package]] +name = "icu_collections" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2984d1cd16c883d7935b9e07e44071dca8d917fd52ecc02c04d5fa0b5a3f191c" +dependencies = [ + "displaydoc", + "potential_utf", + "utf8_iter", + "yoke", + "zerofrom", + "zerovec", +] + +[[package]] +name = "icu_locale_core" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "92219b62b3e2b4d88ac5119f8904c10f8f61bf7e95b640d25ba3075e6cac2c29" +dependencies = [ + "displaydoc", + "litemap", + "tinystr", + "writeable", + "zerovec", +] + +[[package]] +name = "icu_normalizer" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c56e5ee99d6e3d33bd91c5d85458b6005a22140021cc324cea84dd0e72cff3b4" +dependencies = [ + "icu_collections", + "icu_normalizer_data", + "icu_properties", + "icu_provider", + "smallvec", + "zerovec", +] + +[[package]] +name = "icu_normalizer_data" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da3be0ae77ea334f4da67c12f149704f19f81d1adf7c51cf482943e84a2bad38" + +[[package]] +name = "icu_properties" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bee3b67d0ea5c2cca5003417989af8996f8604e34fb9ddf96208a033901e70de" +dependencies = [ + "icu_collections", + "icu_locale_core", + "icu_properties_data", + "icu_provider", + "zerotrie", + "zerovec", +] + +[[package]] +name = "icu_properties_data" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e2bbb201e0c04f7b4b3e14382af113e17ba4f63e2c9d2ee626b720cbce54a14" + +[[package]] +name = "icu_provider" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "139c4cf31c8b5f33d7e199446eff9c1e02decfc2f0eec2c8d71f65befa45b421" +dependencies = [ + "displaydoc", + "icu_locale_core", + "writeable", + "yoke", + "zerofrom", + "zerotrie", + "zerovec", +] + +[[package]] +name = "id-arena" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d3067d79b975e8844ca9eb072e16b31c3c1c36928edf9c6789548c524d0d954" + +[[package]] +name = "ident_case" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" + +[[package]] +name = "idna" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3b0875f23caa03898994f6ddc501886a45c7d3d62d04d2d90788d47be1b1e4de" +dependencies = [ + "idna_adapter", + "smallvec", + "utf8_iter", +] + +[[package]] +name = "idna_adapter" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3acae9609540aa318d1bc588455225fb2085b9ed0c4f6bd0d9d5bcd86f1a0344" +dependencies = [ + "icu_normalizer", + "icu_properties", +] + +[[package]] +name = "indexmap" +version = "1.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" +dependencies = [ + "autocfg", + "hashbrown 0.12.3", + "serde", +] + +[[package]] +name = "indexmap" +version = "2.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d466e9454f08e4a911e14806c24e16fba1b4c121d1ea474396f396069cf949d9" +dependencies = [ + "equivalent", + "hashbrown 0.17.0", + "serde", + "serde_core", +] + +[[package]] +name = "infer" +version = "0.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a588916bfdfd92e71cacef98a63d9b1f0d74d6599980d11894290e7ddefffcf7" +dependencies = [ + "cfb", +] + +[[package]] +name = "ipnet" +version = "2.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d98f6fed1fde3f8c21bc40a1abb88dd75e67924f9cffc3ef95607bad8017f8e2" + +[[package]] +name = "iri-string" +version = "0.7.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "25e659a4bb38e810ebc252e53b5814ff908a8c58c2a9ce2fae1bbec24cbf4e20" +dependencies = [ + "memchr", + "serde", +] + +[[package]] +name = "is-docker" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "928bae27f42bc99b60d9ac7334e3a21d10ad8f1835a4e12ec3ec0464765ed1b3" +dependencies = [ + "once_cell", +] + +[[package]] +name = "is-wsl" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "173609498df190136aa7dea1a91db051746d339e18476eed5ca40521f02d7aa5" +dependencies = [ + "is-docker", + "once_cell", +] + +[[package]] +name = "itoa" +version = "1.0.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682" + +[[package]] +name = "javascriptcore-rs" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca5671e9ffce8ffba57afc24070e906da7fc4b1ba66f2cabebf61bf2ea257fcc" +dependencies = [ + "bitflags 1.3.2", + "glib", + "javascriptcore-rs-sys", +] + +[[package]] +name = "javascriptcore-rs-sys" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af1be78d14ffa4b75b66df31840478fef72b51f8c2465d4ca7c194da9f7a5124" +dependencies = [ + "glib-sys", + "gobject-sys", + "libc", + "system-deps", +] + +[[package]] +name = "jni" +version = "0.21.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97" +dependencies = [ + "cesu8", + "cfg-if", + "combine", + "jni-sys 0.3.1", + "log", + "thiserror 1.0.69", + "walkdir", + "windows-sys 0.45.0", +] + +[[package]] +name = "jni-sys" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41a652e1f9b6e0275df1f15b32661cf0d4b78d4d87ddec5e0c3c20f097433258" +dependencies = [ + "jni-sys 0.4.1", +] + +[[package]] +name = "jni-sys" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c6377a88cb3910bee9b0fa88d4f42e1d2da8e79915598f65fb0c7ee14c878af2" +dependencies = [ + "jni-sys-macros", +] + +[[package]] +name = "jni-sys-macros" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38c0b942f458fe50cdac086d2f946512305e5631e720728f2a61aabcd47a6264" +dependencies = [ + "quote", + "syn 2.0.117", +] + +[[package]] +name = "js-sys" +version = "0.3.95" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2964e92d1d9dc3364cae4d718d93f227e3abb088e747d92e0395bfdedf1c12ca" +dependencies = [ + "cfg-if", + "futures-util", + "once_cell", + "wasm-bindgen", +] + +[[package]] +name = "json-patch" +version = "3.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "863726d7afb6bc2590eeff7135d923545e5e964f004c2ccf8716c25e70a86f08" +dependencies = [ + "jsonptr", + "serde", + "serde_json", + "thiserror 1.0.69", +] + +[[package]] +name = "jsonptr" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5dea2b27dd239b2556ed7a25ba842fe47fd602e7fc7433c2a8d6106d4d9edd70" +dependencies = [ + "serde", + "serde_json", +] + +[[package]] +name = "keyboard-types" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b750dcadc39a09dbadd74e118f6dd6598df77fa01df0cfcdc52c28dece74528a" +dependencies = [ + "bitflags 2.11.0", + "serde", + "unicode-segmentation", +] + +[[package]] +name = "kuchikiki" +version = "0.8.8-speedreader" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "02cb977175687f33fa4afa0c95c112b987ea1443e5a51c8f8ff27dc618270cc2" +dependencies = [ + "cssparser 0.29.6", + "html5ever 0.29.1", + "indexmap 2.14.0", + "selectors 0.24.0", +] + +[[package]] +name = "leb128fmt" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09edd9e8b54e49e587e4f6295a7d29c3ea94d469cb40ab8ca70b288248a81db2" + +[[package]] +name = "libappindicator" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "03589b9607c868cc7ae54c0b2a22c8dc03dd41692d48f2d7df73615c6a95dc0a" +dependencies = [ + "glib", + "gtk", + "gtk-sys", + "libappindicator-sys", + "log", +] + +[[package]] +name = "libappindicator-sys" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e9ec52138abedcc58dc17a7c6c0c00a2bdb4f3427c7f63fa97fd0d859155caf" +dependencies = [ + "gtk-sys", + "libloading", + "once_cell", +] + +[[package]] +name = "libc" +version = "0.2.184" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "48f5d2a454e16a5ea0f4ced81bd44e4cfc7bd3a507b61887c99fd3538b28e4af" + +[[package]] +name = "libloading" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f" +dependencies = [ + "cfg-if", + "winapi", +] + +[[package]] +name = "libredox" +version = "0.1.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e02f3bb43d335493c96bf3fd3a321600bf6bd07ed34bc64118e9293bdffea46c" +dependencies = [ + "libc", +] + +[[package]] +name = "litemap" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "92daf443525c4cce67b150400bc2316076100ce0b3686209eb8cf3c31612e6f0" + +[[package]] +name = "lock_api" +version = "0.4.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "224399e74b87b5f3557511d98dff8b14089b3dadafcab6bb93eab67d3aace965" +dependencies = [ + "scopeguard", +] + +[[package]] +name = "log" +version = "0.4.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e5032e24019045c762d3c0f28f5b6b8bbf38563a65908389bf7978758920897" + +[[package]] +name = "mac" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c41e0c4fef86961ac6d6f8a82609f55f31b05e4fce149ac5710e439df7619ba4" + +[[package]] +name = "markup5ever" +version = "0.14.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7a7213d12e1864c0f002f52c2923d4556935a43dec5e71355c2760e0f6e7a18" +dependencies = [ + "log", + "phf 0.11.3", + "phf_codegen 0.11.3", + "string_cache 0.8.9", + "string_cache_codegen 0.5.4", + "tendril 0.4.3", +] + +[[package]] +name = "markup5ever" +version = "0.38.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8983d30f2915feeaaab2d6babdd6bc7e9ed1a00b66b5e6d74df19aa9c0e91862" +dependencies = [ + "log", + "tendril 0.5.0", + "web_atoms", +] + +[[package]] +name = "match_token" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88a9689d8d44bf9964484516275f5cd4c9b59457a6940c1d5d0ecbb94510a36b" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "matches" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5" + +[[package]] +name = "memchr" +version = "2.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8ca58f447f06ed17d5fc4043ce1b10dd205e060fb3ce5b979b8ed8e59ff3f79" + +[[package]] +name = "memoffset" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a" +dependencies = [ + "autocfg", +] + +[[package]] +name = "mime" +version = "0.3.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" + +[[package]] +name = "miniz_oxide" +version = "0.8.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fa76a2c86f704bdb222d66965fb3d63269ce38518b83cb0575fca855ebb6316" +dependencies = [ + "adler2", + "simd-adler32", +] + +[[package]] +name = "mio" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "50b7e5b27aa02a74bac8c3f23f448f8d87ff11f92d3aac1a6ed369ee08cc56c1" +dependencies = [ + "libc", + "wasi 0.11.1+wasi-snapshot-preview1", + "windows-sys 0.61.2", +] + +[[package]] +name = "muda" +version = "0.17.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c9fec5a4e89860383d778d10563a605838f8f0b2f9303868937e5ff32e86177" +dependencies = [ + "crossbeam-channel", + "dpi", + "gtk", + "keyboard-types", + "objc2", + "objc2-app-kit", + "objc2-core-foundation", + "objc2-foundation", + "once_cell", + "png", + "serde", + "thiserror 2.0.18", + "windows-sys 0.60.2", +] + +[[package]] +name = "ndk" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3f42e7bbe13d351b6bead8286a43aac9534b82bd3cc43e47037f012ebfd62d4" +dependencies = [ + "bitflags 2.11.0", + "jni-sys 0.3.1", + "log", + "ndk-sys", + "num_enum", + "raw-window-handle", + "thiserror 1.0.69", +] + +[[package]] +name = "ndk-context" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "27b02d87554356db9e9a873add8782d4ea6e3e58ea071a9adb9a2e8ddb884a8b" + +[[package]] +name = "ndk-sys" +version = "0.6.0+11769913" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee6cda3051665f1fb8d9e08fc35c96d5a244fb1be711a03b71118828afc9a873" +dependencies = [ + "jni-sys 0.3.1", +] + +[[package]] +name = "new_debug_unreachable" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086" + +[[package]] +name = "nodrop" +version = "0.1.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72ef4a56884ca558e5ddb05a1d1e7e1bfd9a68d9ed024c21704cc98872dae1bb" + +[[package]] +name = "num-conv" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c6673768db2d862beb9b39a78fdcb1a69439615d5794a1be50caa9bc92c81967" + +[[package]] +name = "num-traits" +version = "0.2.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" +dependencies = [ + "autocfg", +] + +[[package]] +name = "num_enum" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d0bca838442ec211fa11de3a8b0e0e8f3a4522575b5c4c06ed722e005036f26" +dependencies = [ + "num_enum_derive", + "rustversion", +] + +[[package]] +name = "num_enum_derive" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "680998035259dcfcafe653688bf2aa6d3e2dc05e98be6ab46afb089dc84f1df8" +dependencies = [ + "proc-macro-crate 3.5.0", + "proc-macro2", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "objc2" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a12a8ed07aefc768292f076dc3ac8c48f3781c8f2d5851dd3d98950e8c5a89f" +dependencies = [ + "objc2-encode", + "objc2-exception-helper", +] + +[[package]] +name = "objc2-app-kit" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d49e936b501e5c5bf01fda3a9452ff86dc3ea98ad5f283e1455153142d97518c" +dependencies = [ + "bitflags 2.11.0", + "block2", + "objc2", + "objc2-core-foundation", + "objc2-foundation", +] + +[[package]] +name = "objc2-core-foundation" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2a180dd8642fa45cdb7dd721cd4c11b1cadd4929ce112ebd8b9f5803cc79d536" +dependencies = [ + "bitflags 2.11.0", + "dispatch2", + "objc2", +] + +[[package]] +name = "objc2-core-graphics" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e022c9d066895efa1345f8e33e584b9f958da2fd4cd116792e15e07e4720a807" +dependencies = [ + "bitflags 2.11.0", + "dispatch2", + "objc2", + "objc2-core-foundation", + "objc2-io-surface", +] + +[[package]] +name = "objc2-encode" +version = "4.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef25abbcd74fb2609453eb695bd2f860d389e457f67dc17cafc8b8cbc89d0c33" + +[[package]] +name = "objc2-exception-helper" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7a1c5fbb72d7735b076bb47b578523aedc40f3c439bea6dfd595c089d79d98a" +dependencies = [ + "cc", +] + +[[package]] +name = "objc2-foundation" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3e0adef53c21f888deb4fa59fc59f7eb17404926ee8a6f59f5df0fd7f9f3272" +dependencies = [ + "bitflags 2.11.0", + "block2", + "libc", + "objc2", + "objc2-core-foundation", +] + +[[package]] +name = "objc2-io-surface" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "180788110936d59bab6bd83b6060ffdfffb3b922ba1396b312ae795e1de9d81d" +dependencies = [ + "bitflags 2.11.0", + "objc2", + "objc2-core-foundation", +] + +[[package]] +name = "objc2-quartz-core" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96c1358452b371bf9f104e21ec536d37a650eb10f7ee379fff67d2e08d537f1f" +dependencies = [ + "bitflags 2.11.0", + "objc2", + "objc2-core-foundation", + "objc2-foundation", +] + +[[package]] +name = "objc2-ui-kit" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d87d638e33c06f577498cbcc50491496a3ed4246998a7fbba7ccb98b1e7eab22" +dependencies = [ + "bitflags 2.11.0", + "objc2", + "objc2-core-foundation", + "objc2-foundation", +] + +[[package]] +name = "objc2-web-kit" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2e5aaab980c433cf470df9d7af96a7b46a9d892d521a2cbbb2f8a4c16751e7f" +dependencies = [ + "bitflags 2.11.0", + "block2", + "objc2", + "objc2-app-kit", + "objc2-core-foundation", + "objc2-foundation", +] + +[[package]] +name = "once_cell" +version = "1.21.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50" + +[[package]] +name = "open" +version = "5.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43bb73a7fa3799b198970490a51174027ba0d4ec504b03cd08caf513d40024bc" +dependencies = [ + "dunce", + "is-wsl", + "libc", + "pathdiff", +] + +[[package]] +name = "option-ext" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" + +[[package]] +name = "os_pipe" +version = "1.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7d8fae84b431384b68627d0f9b3b1245fcf9f46f6c0e3dc902e9dce64edd1967" +dependencies = [ + "libc", + "windows-sys 0.61.2", +] + +[[package]] +name = "pango" +version = "0.18.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ca27ec1eb0457ab26f3036ea52229edbdb74dee1edd29063f5b9b010e7ebee4" +dependencies = [ + "gio", + "glib", + "libc", + "once_cell", + "pango-sys", +] + +[[package]] +name = "pango-sys" +version = "0.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "436737e391a843e5933d6d9aa102cb126d501e815b83601365a948a518555dc5" +dependencies = [ + "glib-sys", + "gobject-sys", + "libc", + "system-deps", +] + +[[package]] +name = "parking_lot" +version = "0.12.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93857453250e3077bd71ff98b6a65ea6621a19bb0f559a85248955ac12c45a1a" +dependencies = [ + "lock_api", + "parking_lot_core", +] + +[[package]] +name = "parking_lot_core" +version = "0.9.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2621685985a2ebf1c516881c026032ac7deafcda1a2c9b7850dc81e3dfcb64c1" +dependencies = [ + "cfg-if", + "libc", + "redox_syscall", + "smallvec", + "windows-link 0.2.1", +] + +[[package]] +name = "pathdiff" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df94ce210e5bc13cb6651479fa48d14f601d9858cfe0467f43ae157023b938d3" + +[[package]] +name = "percent-encoding" +version = "2.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b4f627cb1b25917193a259e49bdad08f671f8d9708acfd5fe0a8c1455d87220" + +[[package]] +name = "phf" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3dfb61232e34fcb633f43d12c58f83c1df82962dcdfa565a4e866ffc17dafe12" +dependencies = [ + "phf_shared 0.8.0", +] + +[[package]] +name = "phf" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fabbf1ead8a5bcbc20f5f8b939ee3f5b0f6f281b6ad3468b84656b658b455259" +dependencies = [ + "phf_macros 0.10.0", + "phf_shared 0.10.0", + "proc-macro-hack", +] + +[[package]] +name = "phf" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fd6780a80ae0c52cc120a26a1a42c1ae51b247a253e4e06113d23d2c2edd078" +dependencies = [ + "phf_macros 0.11.3", + "phf_shared 0.11.3", +] + +[[package]] +name = "phf" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c1562dc717473dbaa4c1f85a36410e03c047b2e7df7f45ee938fbef64ae7fadf" +dependencies = [ + "phf_macros 0.13.1", + "phf_shared 0.13.1", + "serde", +] + +[[package]] +name = "phf_codegen" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cbffee61585b0411840d3ece935cce9cb6321f01c45477d30066498cd5e1a815" +dependencies = [ + "phf_generator 0.8.0", + "phf_shared 0.8.0", +] + +[[package]] +name = "phf_codegen" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aef8048c789fa5e851558d709946d6d79a8ff88c0440c587967f8e94bfb1216a" +dependencies = [ + "phf_generator 0.11.3", + "phf_shared 0.11.3", +] + +[[package]] +name = "phf_codegen" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49aa7f9d80421bca176ca8dbfebe668cc7a2684708594ec9f3c0db0805d5d6e1" +dependencies = [ + "phf_generator 0.13.1", + "phf_shared 0.13.1", +] + +[[package]] +name = "phf_generator" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "17367f0cc86f2d25802b2c26ee58a7b23faeccf78a396094c13dced0d0182526" +dependencies = [ + "phf_shared 0.8.0", + "rand 0.7.3", +] + +[[package]] +name = "phf_generator" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d5285893bb5eb82e6aaf5d59ee909a06a16737a8970984dd7746ba9283498d6" +dependencies = [ + "phf_shared 0.10.0", + "rand 0.8.5", +] + +[[package]] +name = "phf_generator" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c80231409c20246a13fddb31776fb942c38553c51e871f8cbd687a4cfb5843d" +dependencies = [ + "phf_shared 0.11.3", + "rand 0.8.5", +] + +[[package]] +name = "phf_generator" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "135ace3a761e564ec88c03a77317a7c6b80bb7f7135ef2544dbe054243b89737" +dependencies = [ + "fastrand", + "phf_shared 0.13.1", +] + +[[package]] +name = "phf_macros" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "58fdf3184dd560f160dd73922bea2d5cd6e8f064bf4b13110abd81b03697b4e0" +dependencies = [ + "phf_generator 0.10.0", + "phf_shared 0.10.0", + "proc-macro-hack", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "phf_macros" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f84ac04429c13a7ff43785d75ad27569f2951ce0ffd30a3321230db2fc727216" +dependencies = [ + "phf_generator 0.11.3", + "phf_shared 0.11.3", + "proc-macro2", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "phf_macros" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "812f032b54b1e759ccd5f8b6677695d5268c588701effba24601f6932f8269ef" +dependencies = [ + "phf_generator 0.13.1", + "phf_shared 0.13.1", + "proc-macro2", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "phf_shared" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c00cf8b9eafe68dde5e9eaa2cef8ee84a9336a47d566ec55ca16589633b65af7" +dependencies = [ + "siphasher 0.3.11", +] + +[[package]] +name = "phf_shared" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6796ad771acdc0123d2a88dc428b5e38ef24456743ddb1744ed628f9815c096" +dependencies = [ + "siphasher 0.3.11", +] + +[[package]] +name = "phf_shared" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67eabc2ef2a60eb7faa00097bd1ffdb5bd28e62bf39990626a582201b7a754e5" +dependencies = [ + "siphasher 1.0.2", +] + +[[package]] +name = "phf_shared" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e57fef6bc5981e38c2ce2d63bfa546861309f875b8a75f092d1d54ae2d64f266" +dependencies = [ + "siphasher 1.0.2", +] + +[[package]] +name = "pin-project-lite" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a89322df9ebe1c1578d689c92318e070967d1042b512afbe49518723f4e6d5cd" + +[[package]] +name = "pkg-config" +version = "0.3.33" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19f132c84eca552bf34cab8ec81f1c1dcc229b811638f9d283dceabe58c5569e" + +[[package]] +name = "plist" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "740ebea15c5d1428f910cd1a5f52cebf8d25006245ed8ade92702f4943d91e07" +dependencies = [ + "base64 0.22.1", + "indexmap 2.14.0", + "quick-xml", + "serde", + "time", +] + +[[package]] +name = "png" +version = "0.17.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "82151a2fc869e011c153adc57cf2789ccb8d9906ce52c0b39a6b5697749d7526" +dependencies = [ + "bitflags 1.3.2", + "crc32fast", + "fdeflate", + "flate2", + "miniz_oxide", +] + +[[package]] +name = "posimai-guard-app" +version = "0.1.0" +dependencies = [ + "serde", + "serde_json", + "tauri", + "tauri-build", + "tauri-plugin-dialog", + "tauri-plugin-fs", + "tauri-plugin-shell", +] + +[[package]] +name = "potential_utf" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0103b1cef7ec0cf76490e969665504990193874ea05c85ff9bab8b911d0a0564" +dependencies = [ + "zerovec", +] + +[[package]] +name = "powerfmt" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" + +[[package]] +name = "ppv-lite86" +version = "0.2.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9" +dependencies = [ + "zerocopy", +] + +[[package]] +name = "precomputed-hash" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c" + +[[package]] +name = "prettyplease" +version = "0.2.37" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b" +dependencies = [ + "proc-macro2", + "syn 2.0.117", +] + +[[package]] +name = "proc-macro-crate" +version = "1.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919" +dependencies = [ + "once_cell", + "toml_edit 0.19.15", +] + +[[package]] +name = "proc-macro-crate" +version = "2.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b00f26d3400549137f92511a46ac1cd8ce37cb5598a96d382381458b992a5d24" +dependencies = [ + "toml_datetime 0.6.3", + "toml_edit 0.20.2", +] + +[[package]] +name = "proc-macro-crate" +version = "3.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e67ba7e9b2b56446f1d419b1d807906278ffa1a658a8a5d8a39dcb1f5a78614f" +dependencies = [ + "toml_edit 0.25.11+spec-1.1.0", +] + +[[package]] +name = "proc-macro-error" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" +dependencies = [ + "proc-macro-error-attr", + "proc-macro2", + "quote", + "syn 1.0.109", + "version_check", +] + +[[package]] +name = "proc-macro-error-attr" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" +dependencies = [ + "proc-macro2", + "quote", + "version_check", +] + +[[package]] +name = "proc-macro-hack" +version = "0.5.20+deprecated" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068" + +[[package]] +name = "proc-macro2" +version = "1.0.106" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "quick-xml" +version = "0.38.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b66c2058c55a409d601666cffe35f04333cf1013010882cec174a7467cd4e21c" +dependencies = [ + "memchr", +] + +[[package]] +name = "quote" +version = "1.0.45" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41f2619966050689382d2b44f664f4bc593e129785a36d6ee376ddf37259b924" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "r-efi" +version = "5.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f" + +[[package]] +name = "r-efi" +version = "6.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf" + +[[package]] +name = "rand" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03" +dependencies = [ + "getrandom 0.1.16", + "libc", + "rand_chacha 0.2.2", + "rand_core 0.5.1", + "rand_hc", + "rand_pcg", +] + +[[package]] +name = "rand" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" +dependencies = [ + "libc", + "rand_chacha 0.3.1", + "rand_core 0.6.4", +] + +[[package]] +name = "rand_chacha" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402" +dependencies = [ + "ppv-lite86", + "rand_core 0.5.1", +] + +[[package]] +name = "rand_chacha" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" +dependencies = [ + "ppv-lite86", + "rand_core 0.6.4", +] + +[[package]] +name = "rand_core" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19" +dependencies = [ + "getrandom 0.1.16", +] + +[[package]] +name = "rand_core" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" +dependencies = [ + "getrandom 0.2.17", +] + +[[package]] +name = "rand_hc" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c" +dependencies = [ + "rand_core 0.5.1", +] + +[[package]] +name = "rand_pcg" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "16abd0c1b639e9eb4d7c50c0b8100b0d0f849be2349829c740fe8e6eb4816429" +dependencies = [ + "rand_core 0.5.1", +] + +[[package]] +name = "raw-window-handle" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "20675572f6f24e9e76ef639bc5552774ed45f1c30e2951e1e99c59888861c539" + +[[package]] +name = "redox_syscall" +version = "0.5.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed2bf2547551a7053d6fdfafda3f938979645c44812fbfcda098faae3f1a362d" +dependencies = [ + "bitflags 2.11.0", +] + +[[package]] +name = "redox_users" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4e608c6638b9c18977b00b475ac1f28d14e84b27d8d42f70e0bf1e3dec127ac" +dependencies = [ + "getrandom 0.2.17", + "libredox", + "thiserror 2.0.18", +] + +[[package]] +name = "ref-cast" +version = "1.0.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f354300ae66f76f1c85c5f84693f0ce81d747e2c3f21a45fef496d89c960bf7d" +dependencies = [ + "ref-cast-impl", +] + +[[package]] +name = "ref-cast-impl" +version = "1.0.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b7186006dcb21920990093f30e3dea63b7d6e977bf1256be20c3563a5db070da" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "regex" +version = "1.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e10754a14b9137dd7b1e3e5b0493cc9171fdd105e0ab477f51b72e7f3ac0e276" +dependencies = [ + "aho-corasick", + "memchr", + "regex-automata", + "regex-syntax", +] + +[[package]] +name = "regex-automata" +version = "0.4.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e1dd4122fc1595e8162618945476892eefca7b88c52820e74af6262213cae8f" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax", +] + +[[package]] +name = "regex-syntax" +version = "0.8.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc897dd8d9e8bd1ed8cdad82b5966c3e0ecae09fb1907d58efaa013543185d0a" + +[[package]] +name = "reqwest" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ab3f43e3283ab1488b624b44b0e988d0acea0b3214e694730a055cb6b2efa801" +dependencies = [ + "base64 0.22.1", + "bytes", + "futures-core", + "futures-util", + "http", + "http-body", + "http-body-util", + "hyper", + "hyper-util", + "js-sys", + "log", + "percent-encoding", + "pin-project-lite", + "serde", + "serde_json", + "sync_wrapper", + "tokio", + "tokio-util", + "tower", + "tower-http", + "tower-service", + "url", + "wasm-bindgen", + "wasm-bindgen-futures", + "wasm-streams", + "web-sys", +] + +[[package]] +name = "rfd" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a15ad77d9e70a92437d8f74c35d99b4e4691128df018833e99f90bcd36152672" +dependencies = [ + "block2", + "dispatch2", + "glib-sys", + "gobject-sys", + "gtk-sys", + "js-sys", + "log", + "objc2", + "objc2-app-kit", + "objc2-core-foundation", + "objc2-foundation", + "raw-window-handle", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", + "windows-sys 0.60.2", +] + +[[package]] +name = "rustc-hash" +version = "2.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94300abf3f1ae2e2b8ffb7b58043de3d399c73fa6f4b73826402a5c457614dbe" + +[[package]] +name = "rustc_version" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" +dependencies = [ + "semver", +] + +[[package]] +name = "rustversion" +version = "1.0.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" + +[[package]] +name = "same-file" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "schemars" +version = "0.8.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3fbf2ae1b8bc8e02df939598064d22402220cd5bbcca1c76f7d6a310974d5615" +dependencies = [ + "dyn-clone", + "indexmap 1.9.3", + "schemars_derive", + "serde", + "serde_json", + "url", + "uuid", +] + +[[package]] +name = "schemars" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4cd191f9397d57d581cddd31014772520aa448f65ef991055d7f61582c65165f" +dependencies = [ + "dyn-clone", + "ref-cast", + "serde", + "serde_json", +] + +[[package]] +name = "schemars" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2b42f36aa1cd011945615b92222f6bf73c599a102a300334cd7f8dbeec726cc" +dependencies = [ + "dyn-clone", + "ref-cast", + "serde", + "serde_json", +] + +[[package]] +name = "schemars_derive" +version = "0.8.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32e265784ad618884abaea0600a9adf15393368d840e0222d101a072f3f7534d" +dependencies = [ + "proc-macro2", + "quote", + "serde_derive_internals", + "syn 2.0.117", +] + +[[package]] +name = "scopeguard" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" + +[[package]] +name = "selectors" +version = "0.24.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c37578180969d00692904465fb7f6b3d50b9a2b952b87c23d0e2e5cb5013416" +dependencies = [ + "bitflags 1.3.2", + "cssparser 0.29.6", + "derive_more 0.99.20", + "fxhash", + "log", + "phf 0.8.0", + "phf_codegen 0.8.0", + "precomputed-hash", + "servo_arc 0.2.0", + "smallvec", +] + +[[package]] +name = "selectors" +version = "0.36.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c5d9c0c92a92d33f08817311cf3f2c29a3538a8240e94a6a3c622ce652d7e00c" +dependencies = [ + "bitflags 2.11.0", + "cssparser 0.36.0", + "derive_more 2.1.1", + "log", + "new_debug_unreachable", + "phf 0.13.1", + "phf_codegen 0.13.1", + "precomputed-hash", + "rustc-hash", + "servo_arc 0.4.3", + "smallvec", +] + +[[package]] +name = "semver" +version = "1.0.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a7852d02fc848982e0c167ef163aaff9cd91dc640ba85e263cb1ce46fae51cd" +dependencies = [ + "serde", + "serde_core", +] + +[[package]] +name = "serde" +version = "1.0.228" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" +dependencies = [ + "serde_core", + "serde_derive", +] + +[[package]] +name = "serde-untagged" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f9faf48a4a2d2693be24c6289dbe26552776eb7737074e6722891fadbe6c5058" +dependencies = [ + "erased-serde", + "serde", + "serde_core", + "typeid", +] + +[[package]] +name = "serde_core" +version = "1.0.228" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde_derive" +version = "1.0.228" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "serde_derive_internals" +version = "0.29.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "serde_json" +version = "1.0.149" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "83fc039473c5595ace860d8c4fafa220ff474b3fc6bfdb4293327f1a37e94d86" +dependencies = [ + "itoa", + "memchr", + "serde", + "serde_core", + "zmij", +] + +[[package]] +name = "serde_repr" +version = "0.1.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "175ee3e80ae9982737ca543e96133087cbd9a485eecc3bc4de9c1a37b47ea59c" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "serde_spanned" +version = "0.6.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf41e0cfaf7226dca15e8197172c295a782857fcb97fad1808a166870dee75a3" +dependencies = [ + "serde", +] + +[[package]] +name = "serde_spanned" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6662b5879511e06e8999a8a235d848113e942c9124f211511b16466ee2995f26" +dependencies = [ + "serde_core", +] + +[[package]] +name = "serde_with" +version = "3.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd5414fad8e6907dbdd5bc441a50ae8d6e26151a03b1de04d89a5576de61d01f" +dependencies = [ + "base64 0.22.1", + "chrono", + "hex", + "indexmap 1.9.3", + "indexmap 2.14.0", + "schemars 0.9.0", + "schemars 1.2.1", + "serde_core", + "serde_json", + "serde_with_macros", + "time", +] + +[[package]] +name = "serde_with_macros" +version = "3.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3db8978e608f1fe7357e211969fd9abdcae80bac1ba7a3369bb7eb6b404eb65" +dependencies = [ + "darling", + "proc-macro2", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "serialize-to-javascript" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04f3666a07a197cdb77cdf306c32be9b7f598d7060d50cfd4d5aa04bfd92f6c5" +dependencies = [ + "serde", + "serde_json", + "serialize-to-javascript-impl", +] + +[[package]] +name = "serialize-to-javascript-impl" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "772ee033c0916d670af7860b6e1ef7d658a4629a6d0b4c8c3e67f09b3765b75d" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "servo_arc" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d52aa42f8fdf0fed91e5ce7f23d8138441002fa31dca008acf47e6fd4721f741" +dependencies = [ + "nodrop", + "stable_deref_trait", +] + +[[package]] +name = "servo_arc" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "170fb83ab34de17dc69aa7c67482b22218ddb85da56546f9bd6b929e32a05930" +dependencies = [ + "stable_deref_trait", +] + +[[package]] +name = "sha2" +version = "0.10.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest", +] + +[[package]] +name = "shared_child" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e362d9935bc50f019969e2f9ecd66786612daae13e8f277be7bfb66e8bed3f7" +dependencies = [ + "libc", + "sigchld", + "windows-sys 0.60.2", +] + +[[package]] +name = "shlex" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" + +[[package]] +name = "sigchld" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "47106eded3c154e70176fc83df9737335c94ce22f821c32d17ed1db1f83badb1" +dependencies = [ + "libc", + "os_pipe", + "signal-hook", +] + +[[package]] +name = "signal-hook" +version = "0.3.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d881a16cf4426aa584979d30bd82cb33429027e42122b169753d6ef1085ed6e2" +dependencies = [ + "libc", + "signal-hook-registry", +] + +[[package]] +name = "signal-hook-registry" +version = "1.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4db69cba1110affc0e9f7bcd48bbf87b3f4fc7c61fc9155afd4c469eb3d6c1b" +dependencies = [ + "errno", + "libc", +] + +[[package]] +name = "simd-adler32" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "703d5c7ef118737c72f1af64ad2f6f8c5e1921f818cdcb97b8fe6fc69bf66214" + +[[package]] +name = "siphasher" +version = "0.3.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d" + +[[package]] +name = "siphasher" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2aa850e253778c88a04c3d7323b043aeda9d3e30d5971937c1855769763678e" + +[[package]] +name = "slab" +version = "0.4.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c790de23124f9ab44544d7ac05d60440adc586479ce501c1d6d7da3cd8c9cf5" + +[[package]] +name = "smallvec" +version = "1.15.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03" + +[[package]] +name = "socket2" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a766e1110788c36f4fa1c2b71b387a7815aa65f88ce0229841826633d93723e" +dependencies = [ + "libc", + "windows-sys 0.61.2", +] + +[[package]] +name = "softbuffer" +version = "0.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aac18da81ebbf05109ab275b157c22a653bb3c12cf884450179942f81bcbf6c3" +dependencies = [ + "bytemuck", + "js-sys", + "ndk", + "objc2", + "objc2-core-foundation", + "objc2-core-graphics", + "objc2-foundation", + "objc2-quartz-core", + "raw-window-handle", + "redox_syscall", + "tracing", + "wasm-bindgen", + "web-sys", + "windows-sys 0.61.2", +] + +[[package]] +name = "soup3" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "471f924a40f31251afc77450e781cb26d55c0b650842efafc9c6cbd2f7cc4f9f" +dependencies = [ + "futures-channel", + "gio", + "glib", + "libc", + "soup3-sys", +] + +[[package]] +name = "soup3-sys" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ebe8950a680a12f24f15ebe1bf70db7af98ad242d9db43596ad3108aab86c27" +dependencies = [ + "gio-sys", + "glib-sys", + "gobject-sys", + "libc", + "system-deps", +] + +[[package]] +name = "stable_deref_trait" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596" + +[[package]] +name = "string_cache" +version = "0.8.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf776ba3fa74f83bf4b63c3dcbbf82173db2632ed8452cb2d891d33f459de70f" +dependencies = [ + "new_debug_unreachable", + "parking_lot", + "phf_shared 0.11.3", + "precomputed-hash", + "serde", +] + +[[package]] +name = "string_cache" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a18596f8c785a729f2819c0f6a7eae6ebeebdfffbfe4214ae6b087f690e31901" +dependencies = [ + "new_debug_unreachable", + "parking_lot", + "phf_shared 0.13.1", + "precomputed-hash", +] + +[[package]] +name = "string_cache_codegen" +version = "0.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c711928715f1fe0fe509c53b43e993a9a557babc2d0a3567d0a3006f1ac931a0" +dependencies = [ + "phf_generator 0.11.3", + "phf_shared 0.11.3", + "proc-macro2", + "quote", +] + +[[package]] +name = "string_cache_codegen" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "585635e46db231059f76c5849798146164652513eb9e8ab2685939dd90f29b69" +dependencies = [ + "phf_generator 0.13.1", + "phf_shared 0.13.1", + "proc-macro2", + "quote", +] + +[[package]] +name = "strsim" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" + +[[package]] +name = "swift-rs" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4057c98e2e852d51fdcfca832aac7b571f6b351ad159f9eda5db1655f8d0c4d7" +dependencies = [ + "base64 0.21.7", + "serde", + "serde_json", +] + +[[package]] +name = "syn" +version = "1.0.109" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "syn" +version = "2.0.117" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e665b8803e7b1d2a727f4023456bbbbe74da67099c585258af0ad9c5013b9b99" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "sync_wrapper" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0bf256ce5efdfa370213c1dabab5935a12e49f2c58d15e9eac2870d3b4f27263" +dependencies = [ + "futures-core", +] + +[[package]] +name = "synstructure" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "system-deps" +version = "6.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a3e535eb8dded36d55ec13eddacd30dec501792ff23a0b1682c38601b8cf2349" +dependencies = [ + "cfg-expr", + "heck 0.5.0", + "pkg-config", + "toml 0.8.2", + "version-compare", +] + +[[package]] +name = "tao" +version = "0.34.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9103edf55f2da3c82aea4c7fab7c4241032bfeea0e71fa557d98e00e7ce7cc20" +dependencies = [ + "bitflags 2.11.0", + "block2", + "core-foundation", + "core-graphics", + "crossbeam-channel", + "dispatch2", + "dlopen2", + "dpi", + "gdkwayland-sys", + "gdkx11-sys", + "gtk", + "jni", + "libc", + "log", + "ndk", + "ndk-context", + "ndk-sys", + "objc2", + "objc2-app-kit", + "objc2-foundation", + "once_cell", + "parking_lot", + "raw-window-handle", + "tao-macros", + "unicode-segmentation", + "url", + "windows", + "windows-core 0.61.2", + "windows-version", + "x11-dl", +] + +[[package]] +name = "tao-macros" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4e16beb8b2ac17db28eab8bca40e62dbfbb34c0fcdc6d9826b11b7b5d047dfd" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "target-lexicon" +version = "0.12.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1" + +[[package]] +name = "tauri" +version = "2.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da77cc00fb9028caf5b5d4650f75e31f1ef3693459dfca7f7e506d1ecef0ba2d" +dependencies = [ + "anyhow", + "bytes", + "cookie", + "dirs", + "dunce", + "embed_plist", + "getrandom 0.3.4", + "glob", + "gtk", + "heck 0.5.0", + "http", + "jni", + "libc", + "log", + "mime", + "muda", + "objc2", + "objc2-app-kit", + "objc2-foundation", + "objc2-ui-kit", + "objc2-web-kit", + "percent-encoding", + "plist", + "raw-window-handle", + "reqwest", + "serde", + "serde_json", + "serde_repr", + "serialize-to-javascript", + "swift-rs", + "tauri-build", + "tauri-macros", + "tauri-runtime", + "tauri-runtime-wry", + "tauri-utils", + "thiserror 2.0.18", + "tokio", + "tray-icon", + "url", + "webkit2gtk", + "webview2-com", + "window-vibrancy", + "windows", +] + +[[package]] +name = "tauri-build" +version = "2.5.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4bbc990d1dbf57a8e1c7fa2327f2a614d8b757805603c1b9ba5c81bade09fd4d" +dependencies = [ + "anyhow", + "cargo_toml", + "dirs", + "glob", + "heck 0.5.0", + "json-patch", + "schemars 0.8.22", + "semver", + "serde", + "serde_json", + "tauri-utils", + "tauri-winres", + "toml 0.9.12+spec-1.1.0", + "walkdir", +] + +[[package]] +name = "tauri-codegen" +version = "2.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d4a24476afd977c5d5d169f72425868613d82747916dd29e0a357c84c4bd6d29" +dependencies = [ + "base64 0.22.1", + "brotli", + "ico", + "json-patch", + "plist", + "png", + "proc-macro2", + "quote", + "semver", + "serde", + "serde_json", + "sha2", + "syn 2.0.117", + "tauri-utils", + "thiserror 2.0.18", + "time", + "url", + "uuid", + "walkdir", +] + +[[package]] +name = "tauri-macros" +version = "2.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d39b349a98dadaffebb73f0a40dcd1f23c999211e5a2e744403db384d0c33de7" +dependencies = [ + "heck 0.5.0", + "proc-macro2", + "quote", + "syn 2.0.117", + "tauri-codegen", + "tauri-utils", +] + +[[package]] +name = "tauri-plugin" +version = "2.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ddde7d51c907b940fb573006cdda9a642d6a7c8153657e88f8a5c3c9290cd4aa" +dependencies = [ + "anyhow", + "glob", + "plist", + "schemars 0.8.22", + "serde", + "serde_json", + "tauri-utils", + "toml 0.9.12+spec-1.1.0", + "walkdir", +] + +[[package]] +name = "tauri-plugin-dialog" +version = "2.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1fa4150c95ae391946cc8b8f905ab14797427caba3a8a2f79628e956da91809" +dependencies = [ + "log", + "raw-window-handle", + "rfd", + "serde", + "serde_json", + "tauri", + "tauri-plugin", + "tauri-plugin-fs", + "thiserror 2.0.18", + "url", +] + +[[package]] +name = "tauri-plugin-fs" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "36e1ec28b79f3d0683f4507e1615c36292c0ea6716668770d4396b9b39871ed8" +dependencies = [ + "anyhow", + "dunce", + "glob", + "log", + "objc2-foundation", + "percent-encoding", + "schemars 0.8.22", + "serde", + "serde_json", + "serde_repr", + "tauri", + "tauri-plugin", + "tauri-utils", + "thiserror 2.0.18", + "toml 0.9.12+spec-1.1.0", + "url", +] + +[[package]] +name = "tauri-plugin-shell" +version = "2.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8457dbf9e2bab1edd8df22bb2c20857a59a9868e79cb3eac5ed639eec4d0c73b" +dependencies = [ + "encoding_rs", + "log", + "open", + "os_pipe", + "regex", + "schemars 0.8.22", + "serde", + "serde_json", + "shared_child", + "tauri", + "tauri-plugin", + "thiserror 2.0.18", + "tokio", +] + +[[package]] +name = "tauri-runtime" +version = "2.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2826d79a3297ed08cd6ea7f412644ef58e32969504bc4fbd8d7dbeabc4445ea2" +dependencies = [ + "cookie", + "dpi", + "gtk", + "http", + "jni", + "objc2", + "objc2-ui-kit", + "objc2-web-kit", + "raw-window-handle", + "serde", + "serde_json", + "tauri-utils", + "thiserror 2.0.18", + "url", + "webkit2gtk", + "webview2-com", + "windows", +] + +[[package]] +name = "tauri-runtime-wry" +version = "2.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e11ea2e6f801d275fdd890d6c9603736012742a1c33b96d0db788c9cdebf7f9e" +dependencies = [ + "gtk", + "http", + "jni", + "log", + "objc2", + "objc2-app-kit", + "once_cell", + "percent-encoding", + "raw-window-handle", + "softbuffer", + "tao", + "tauri-runtime", + "tauri-utils", + "url", + "webkit2gtk", + "webview2-com", + "windows", + "wry", +] + +[[package]] +name = "tauri-utils" +version = "2.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "219a1f983a2af3653f75b5747f76733b0da7ff03069c7a41901a5eb3ace4557d" +dependencies = [ + "anyhow", + "brotli", + "cargo_metadata", + "ctor", + "dunce", + "glob", + "html5ever 0.29.1", + "http", + "infer", + "json-patch", + "kuchikiki", + "log", + "memchr", + "phf 0.11.3", + "proc-macro2", + "quote", + "regex", + "schemars 0.8.22", + "semver", + "serde", + "serde-untagged", + "serde_json", + "serde_with", + "swift-rs", + "thiserror 2.0.18", + "toml 0.9.12+spec-1.1.0", + "url", + "urlpattern", + "uuid", + "walkdir", +] + +[[package]] +name = "tauri-winres" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1087b111fe2b005e42dbdc1990fc18593234238d47453b0c99b7de1c9ab2c1e0" +dependencies = [ + "dunce", + "embed-resource", + "toml 0.9.12+spec-1.1.0", +] + +[[package]] +name = "tendril" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d24a120c5fc464a3458240ee02c299ebcb9d67b5249c8848b09d639dca8d7bb0" +dependencies = [ + "futf", + "mac", + "utf-8", +] + +[[package]] +name = "tendril" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4790fc369d5a530f4b544b094e31388b9b3a37c0f4652ade4505945f5660d24" +dependencies = [ + "new_debug_unreachable", + "utf-8", +] + +[[package]] +name = "thiserror" +version = "1.0.69" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52" +dependencies = [ + "thiserror-impl 1.0.69", +] + +[[package]] +name = "thiserror" +version = "2.0.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4288b5bcbc7920c07a1149a35cf9590a2aa808e0bc1eafaade0b80947865fbc4" +dependencies = [ + "thiserror-impl 2.0.18", +] + +[[package]] +name = "thiserror-impl" +version = "1.0.69" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "thiserror-impl" +version = "2.0.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ebc4ee7f67670e9b64d05fa4253e753e016c6c95ff35b89b7941d6b856dec1d5" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "time" +version = "0.3.47" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "743bd48c283afc0388f9b8827b976905fb217ad9e647fae3a379a9283c4def2c" +dependencies = [ + "deranged", + "itoa", + "num-conv", + "powerfmt", + "serde_core", + "time-core", + "time-macros", +] + +[[package]] +name = "time-core" +version = "0.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7694e1cfe791f8d31026952abf09c69ca6f6fa4e1a1229e18988f06a04a12dca" + +[[package]] +name = "time-macros" +version = "0.2.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2e70e4c5a0e0a8a4823ad65dfe1a6930e4f4d756dcd9dd7939022b5e8c501215" +dependencies = [ + "num-conv", + "time-core", +] + +[[package]] +name = "tinystr" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8323304221c2a851516f22236c5722a72eaa19749016521d6dff0824447d96d" +dependencies = [ + "displaydoc", + "zerovec", +] + +[[package]] +name = "tokio" +version = "1.51.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f66bf9585cda4b724d3e78ab34b73fb2bbaba9011b9bfdf69dc836382ea13b8c" +dependencies = [ + "bytes", + "libc", + "mio", + "pin-project-lite", + "socket2", + "windows-sys 0.61.2", +] + +[[package]] +name = "tokio-util" +version = "0.7.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ae9cec805b01e8fc3fd2fe289f89149a9b66dd16786abd8b19cfa7b48cb0098" +dependencies = [ + "bytes", + "futures-core", + "futures-sink", + "pin-project-lite", + "tokio", +] + +[[package]] +name = "toml" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "185d8ab0dfbb35cf1399a6344d8484209c088f75f8f68230da55d48d95d43e3d" +dependencies = [ + "serde", + "serde_spanned 0.6.9", + "toml_datetime 0.6.3", + "toml_edit 0.20.2", +] + +[[package]] +name = "toml" +version = "0.9.12+spec-1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf92845e79fc2e2def6a5d828f0801e29a2f8acc037becc5ab08595c7d5e9863" +dependencies = [ + "indexmap 2.14.0", + "serde_core", + "serde_spanned 1.1.1", + "toml_datetime 0.7.5+spec-1.1.0", + "toml_parser", + "toml_writer", + "winnow 0.7.15", +] + +[[package]] +name = "toml_datetime" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7cda73e2f1397b1262d6dfdcef8aafae14d1de7748d66822d3bfeeb6d03e5e4b" +dependencies = [ + "serde", +] + +[[package]] +name = "toml_datetime" +version = "0.7.5+spec-1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "92e1cfed4a3038bc5a127e35a2d360f145e1f4b971b551a2ba5fd7aedf7e1347" +dependencies = [ + "serde_core", +] + +[[package]] +name = "toml_datetime" +version = "1.1.1+spec-1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3165f65f62e28e0115a00b2ebdd37eb6f3b641855f9d636d3cd4103767159ad7" +dependencies = [ + "serde_core", +] + +[[package]] +name = "toml_edit" +version = "0.19.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" +dependencies = [ + "indexmap 2.14.0", + "toml_datetime 0.6.3", + "winnow 0.5.40", +] + +[[package]] +name = "toml_edit" +version = "0.20.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "396e4d48bbb2b7554c944bde63101b5ae446cff6ec4a24227428f15eb72ef338" +dependencies = [ + "indexmap 2.14.0", + "serde", + "serde_spanned 0.6.9", + "toml_datetime 0.6.3", + "winnow 0.5.40", +] + +[[package]] +name = "toml_edit" +version = "0.25.11+spec-1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b59c4d22ed448339746c59b905d24568fcbb3ab65a500494f7b8c3e97739f2b" +dependencies = [ + "indexmap 2.14.0", + "toml_datetime 1.1.1+spec-1.1.0", + "toml_parser", + "winnow 1.0.1", +] + +[[package]] +name = "toml_parser" +version = "1.1.2+spec-1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2abe9b86193656635d2411dc43050282ca48aa31c2451210f4202550afb7526" +dependencies = [ + "winnow 1.0.1", +] + +[[package]] +name = "toml_writer" +version = "1.1.1+spec-1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "756daf9b1013ebe47a8776667b466417e2d4c5679d441c26230efd9ef78692db" + +[[package]] +name = "tower" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ebe5ef63511595f1344e2d5cfa636d973292adc0eec1f0ad45fae9f0851ab1d4" +dependencies = [ + "futures-core", + "futures-util", + "pin-project-lite", + "sync_wrapper", + "tokio", + "tower-layer", + "tower-service", +] + +[[package]] +name = "tower-http" +version = "0.6.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d4e6559d53cc268e5031cd8429d05415bc4cb4aefc4aa5d6cc35fbf5b924a1f8" +dependencies = [ + "bitflags 2.11.0", + "bytes", + "futures-util", + "http", + "http-body", + "iri-string", + "pin-project-lite", + "tower", + "tower-layer", + "tower-service", +] + +[[package]] +name = "tower-layer" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "121c2a6cda46980bb0fcd1647ffaf6cd3fc79a013de288782836f6df9c48780e" + +[[package]] +name = "tower-service" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" + +[[package]] +name = "tracing" +version = "0.1.44" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "63e71662fa4b2a2c3a26f570f037eb95bb1f85397f3cd8076caed2f026a6d100" +dependencies = [ + "pin-project-lite", + "tracing-core", +] + +[[package]] +name = "tracing-core" +version = "0.1.36" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db97caf9d906fbde555dd62fa95ddba9eecfd14cb388e4f491a66d74cd5fb79a" +dependencies = [ + "once_cell", +] + +[[package]] +name = "tray-icon" +version = "0.21.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a5e85aa143ceb072062fc4d6356c1b520a51d636e7bc8e77ec94be3608e5e80c" +dependencies = [ + "crossbeam-channel", + "dirs", + "libappindicator", + "muda", + "objc2", + "objc2-app-kit", + "objc2-core-foundation", + "objc2-core-graphics", + "objc2-foundation", + "once_cell", + "png", + "serde", + "thiserror 2.0.18", + "windows-sys 0.60.2", +] + +[[package]] +name = "try-lock" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" + +[[package]] +name = "typeid" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc7d623258602320d5c55d1bc22793b57daff0ec7efc270ea7d55ce1d5f5471c" + +[[package]] +name = "typenum" +version = "1.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "562d481066bde0658276a35467c4af00bdc6ee726305698a55b86e61d7ad82bb" + +[[package]] +name = "unic-char-property" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8c57a407d9b6fa02b4795eb81c5b6652060a15a7903ea981f3d723e6c0be221" +dependencies = [ + "unic-char-range", +] + +[[package]] +name = "unic-char-range" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0398022d5f700414f6b899e10b8348231abf9173fa93144cbc1a43b9793c1fbc" + +[[package]] +name = "unic-common" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "80d7ff825a6a654ee85a63e80f92f054f904f21e7d12da4e22f9834a4aaa35bc" + +[[package]] +name = "unic-ucd-ident" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e230a37c0381caa9219d67cf063aa3a375ffed5bf541a452db16e744bdab6987" +dependencies = [ + "unic-char-property", + "unic-char-range", + "unic-ucd-version", +] + +[[package]] +name = "unic-ucd-version" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96bd2f2237fe450fcd0a1d2f5f4e91711124f7857ba2e964247776ebeeb7b0c4" +dependencies = [ + "unic-common", +] + +[[package]] +name = "unicode-ident" +version = "1.0.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75" + +[[package]] +name = "unicode-segmentation" +version = "1.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9629274872b2bfaf8d66f5f15725007f635594914870f65218920345aa11aa8c" + +[[package]] +name = "unicode-xid" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" + +[[package]] +name = "url" +version = "2.5.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff67a8a4397373c3ef660812acab3268222035010ab8680ec4215f38ba3d0eed" +dependencies = [ + "form_urlencoded", + "idna", + "percent-encoding", + "serde", + "serde_derive", +] + +[[package]] +name = "urlpattern" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70acd30e3aa1450bc2eece896ce2ad0d178e9c079493819301573dae3c37ba6d" +dependencies = [ + "regex", + "serde", + "unic-ucd-ident", + "url", +] + +[[package]] +name = "utf-8" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" + +[[package]] +name = "utf8_iter" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" + +[[package]] +name = "uuid" +version = "1.23.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ac8b6f42ead25368cf5b098aeb3dc8a1a2c05a3eee8a9a1a68c640edbfc79d9" +dependencies = [ + "getrandom 0.4.2", + "js-sys", + "serde_core", + "wasm-bindgen", +] + +[[package]] +name = "version-compare" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "03c2856837ef78f57382f06b2b8563a2f512f7185d732608fd9176cb3b8edf0e" + +[[package]] +name = "version_check" +version = "0.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" + +[[package]] +name = "vswhom" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be979b7f07507105799e854203b470ff7c78a1639e330a58f183b5fea574608b" +dependencies = [ + "libc", + "vswhom-sys", +] + +[[package]] +name = "vswhom-sys" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb067e4cbd1ff067d1df46c9194b5de0e98efd2810bbc95c5d5e5f25a3231150" +dependencies = [ + "cc", + "libc", +] + +[[package]] +name = "walkdir" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" +dependencies = [ + "same-file", + "winapi-util", +] + +[[package]] +name = "want" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" +dependencies = [ + "try-lock", +] + +[[package]] +name = "wasi" +version = "0.9.0+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" + +[[package]] +name = "wasi" +version = "0.11.1+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" + +[[package]] +name = "wasip2" +version = "1.0.2+wasi-0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9517f9239f02c069db75e65f174b3da828fe5f5b945c4dd26bd25d89c03ebcf5" +dependencies = [ + "wit-bindgen", +] + +[[package]] +name = "wasip3" +version = "0.4.0+wasi-0.3.0-rc-2026-01-06" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5428f8bf88ea5ddc08faddef2ac4a67e390b88186c703ce6dbd955e1c145aca5" +dependencies = [ + "wit-bindgen", +] + +[[package]] +name = "wasm-bindgen" +version = "0.2.118" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0bf938a0bacb0469e83c1e148908bd7d5a6010354cf4fb73279b7447422e3a89" +dependencies = [ + "cfg-if", + "once_cell", + "rustversion", + "wasm-bindgen-macro", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-futures" +version = "0.4.68" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f371d383f2fb139252e0bfac3b81b265689bf45b6874af544ffa4c975ac1ebf8" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "wasm-bindgen-macro" +version = "0.2.118" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eeff24f84126c0ec2db7a449f0c2ec963c6a49efe0698c4242929da037ca28ed" +dependencies = [ + "quote", + "wasm-bindgen-macro-support", +] + +[[package]] +name = "wasm-bindgen-macro-support" +version = "0.2.118" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d08065faf983b2b80a79fd87d8254c409281cf7de75fc4b773019824196c904" +dependencies = [ + "bumpalo", + "proc-macro2", + "quote", + "syn 2.0.117", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-shared" +version = "0.2.118" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5fd04d9e306f1907bd13c6361b5c6bfc7b3b3c095ed3f8a9246390f8dbdee129" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "wasm-encoder" +version = "0.244.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "990065f2fe63003fe337b932cfb5e3b80e0b4d0f5ff650e6985b1048f62c8319" +dependencies = [ + "leb128fmt", + "wasmparser", +] + +[[package]] +name = "wasm-metadata" +version = "0.244.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb0e353e6a2fbdc176932bbaab493762eb1255a7900fe0fea1a2f96c296cc909" +dependencies = [ + "anyhow", + "indexmap 2.14.0", + "wasm-encoder", + "wasmparser", +] + +[[package]] +name = "wasm-streams" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d1ec4f6517c9e11ae630e200b2b65d193279042e28edd4a2cda233e46670bbb" +dependencies = [ + "futures-util", + "js-sys", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", +] + +[[package]] +name = "wasmparser" +version = "0.244.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "47b807c72e1bac69382b3a6fb3dbe8ea4c0ed87ff5629b8685ae6b9a611028fe" +dependencies = [ + "bitflags 2.11.0", + "hashbrown 0.15.5", + "indexmap 2.14.0", + "semver", +] + +[[package]] +name = "web-sys" +version = "0.3.95" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4f2dfbb17949fa2088e5d39408c48368947b86f7834484e87b73de55bc14d97d" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "web_atoms" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57a9779e9f04d2ac1ce317aee707aa2f6b773afba7b931222bff6983843b1576" +dependencies = [ + "phf 0.13.1", + "phf_codegen 0.13.1", + "string_cache 0.9.0", + "string_cache_codegen 0.6.1", +] + +[[package]] +name = "webkit2gtk" +version = "2.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1027150013530fb2eaf806408df88461ae4815a45c541c8975e61d6f2fc4793" +dependencies = [ + "bitflags 1.3.2", + "cairo-rs", + "gdk", + "gdk-sys", + "gio", + "gio-sys", + "glib", + "glib-sys", + "gobject-sys", + "gtk", + "gtk-sys", + "javascriptcore-rs", + "libc", + "once_cell", + "soup3", + "webkit2gtk-sys", +] + +[[package]] +name = "webkit2gtk-sys" +version = "2.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "916a5f65c2ef0dfe12fff695960a2ec3d4565359fdbb2e9943c974e06c734ea5" +dependencies = [ + "bitflags 1.3.2", + "cairo-sys-rs", + "gdk-sys", + "gio-sys", + "glib-sys", + "gobject-sys", + "gtk-sys", + "javascriptcore-rs-sys", + "libc", + "pkg-config", + "soup3-sys", + "system-deps", +] + +[[package]] +name = "webview2-com" +version = "0.38.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7130243a7a5b33c54a444e54842e6a9e133de08b5ad7b5861cd8ed9a6a5bc96a" +dependencies = [ + "webview2-com-macros", + "webview2-com-sys", + "windows", + "windows-core 0.61.2", + "windows-implement", + "windows-interface", +] + +[[package]] +name = "webview2-com-macros" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67a921c1b6914c367b2b823cd4cde6f96beec77d30a939c8199bb377cf9b9b54" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "webview2-com-sys" +version = "0.38.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "381336cfffd772377d291702245447a5251a2ffa5bad679c99e61bc48bacbf9c" +dependencies = [ + "thiserror 2.0.18", + "windows", + "windows-core 0.61.2", +] + +[[package]] +name = "winapi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" +dependencies = [ + "winapi-i686-pc-windows-gnu", + "winapi-x86_64-pc-windows-gnu", +] + +[[package]] +name = "winapi-i686-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" + +[[package]] +name = "winapi-util" +version = "0.1.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" +dependencies = [ + "windows-sys 0.61.2", +] + +[[package]] +name = "winapi-x86_64-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" + +[[package]] +name = "window-vibrancy" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9bec5a31f3f9362f2258fd0e9c9dd61a9ca432e7306cc78c444258f0dce9a9c" +dependencies = [ + "objc2", + "objc2-app-kit", + "objc2-core-foundation", + "objc2-foundation", + "raw-window-handle", + "windows-sys 0.59.0", + "windows-version", +] + +[[package]] +name = "windows" +version = "0.61.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9babd3a767a4c1aef6900409f85f5d53ce2544ccdfaa86dad48c91782c6d6893" +dependencies = [ + "windows-collections", + "windows-core 0.61.2", + "windows-future", + "windows-link 0.1.3", + "windows-numerics", +] + +[[package]] +name = "windows-collections" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3beeceb5e5cfd9eb1d76b381630e82c4241ccd0d27f1a39ed41b2760b255c5e8" +dependencies = [ + "windows-core 0.61.2", +] + +[[package]] +name = "windows-core" +version = "0.61.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0fdd3ddb90610c7638aa2b3a3ab2904fb9e5cdbecc643ddb3647212781c4ae3" +dependencies = [ + "windows-implement", + "windows-interface", + "windows-link 0.1.3", + "windows-result 0.3.4", + "windows-strings 0.4.2", +] + +[[package]] +name = "windows-core" +version = "0.62.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8e83a14d34d0623b51dce9581199302a221863196a1dde71a7663a4c2be9deb" +dependencies = [ + "windows-implement", + "windows-interface", + "windows-link 0.2.1", + "windows-result 0.4.1", + "windows-strings 0.5.1", +] + +[[package]] +name = "windows-future" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc6a41e98427b19fe4b73c550f060b59fa592d7d686537eebf9385621bfbad8e" +dependencies = [ + "windows-core 0.61.2", + "windows-link 0.1.3", + "windows-threading", +] + +[[package]] +name = "windows-implement" +version = "0.60.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "windows-interface" +version = "0.59.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "windows-link" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a" + +[[package]] +name = "windows-link" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" + +[[package]] +name = "windows-numerics" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9150af68066c4c5c07ddc0ce30421554771e528bde427614c61038bc2c92c2b1" +dependencies = [ + "windows-core 0.61.2", + "windows-link 0.1.3", +] + +[[package]] +name = "windows-result" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56f42bd332cc6c8eac5af113fc0c1fd6a8fd2aa08a0119358686e5160d0586c6" +dependencies = [ + "windows-link 0.1.3", +] + +[[package]] +name = "windows-result" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7781fa89eaf60850ac3d2da7af8e5242a5ea78d1a11c49bf2910bb5a73853eb5" +dependencies = [ + "windows-link 0.2.1", +] + +[[package]] +name = "windows-strings" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56e6c93f3a0c3b36176cb1327a4958a0353d5d166c2a35cb268ace15e91d3b57" +dependencies = [ + "windows-link 0.1.3", +] + +[[package]] +name = "windows-strings" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7837d08f69c77cf6b07689544538e017c1bfcf57e34b4c0ff58e6c2cd3b37091" +dependencies = [ + "windows-link 0.2.1", +] + +[[package]] +name = "windows-sys" +version = "0.45.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" +dependencies = [ + "windows-targets 0.42.2", +] + +[[package]] +name = "windows-sys" +version = "0.59.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-sys" +version = "0.60.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" +dependencies = [ + "windows-targets 0.53.5", +] + +[[package]] +name = "windows-sys" +version = "0.61.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc" +dependencies = [ + "windows-link 0.2.1", +] + +[[package]] +name = "windows-targets" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" +dependencies = [ + "windows_aarch64_gnullvm 0.42.2", + "windows_aarch64_msvc 0.42.2", + "windows_i686_gnu 0.42.2", + "windows_i686_msvc 0.42.2", + "windows_x86_64_gnu 0.42.2", + "windows_x86_64_gnullvm 0.42.2", + "windows_x86_64_msvc 0.42.2", +] + +[[package]] +name = "windows-targets" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" +dependencies = [ + "windows_aarch64_gnullvm 0.52.6", + "windows_aarch64_msvc 0.52.6", + "windows_i686_gnu 0.52.6", + "windows_i686_gnullvm 0.52.6", + "windows_i686_msvc 0.52.6", + "windows_x86_64_gnu 0.52.6", + "windows_x86_64_gnullvm 0.52.6", + "windows_x86_64_msvc 0.52.6", +] + +[[package]] +name = "windows-targets" +version = "0.53.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4945f9f551b88e0d65f3db0bc25c33b8acea4d9e41163edf90dcd0b19f9069f3" +dependencies = [ + "windows-link 0.2.1", + "windows_aarch64_gnullvm 0.53.1", + "windows_aarch64_msvc 0.53.1", + "windows_i686_gnu 0.53.1", + "windows_i686_gnullvm 0.53.1", + "windows_i686_msvc 0.53.1", + "windows_x86_64_gnu 0.53.1", + "windows_x86_64_gnullvm 0.53.1", + "windows_x86_64_msvc 0.53.1", +] + +[[package]] +name = "windows-threading" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b66463ad2e0ea3bbf808b7f1d371311c80e115c0b71d60efc142cafbcfb057a6" +dependencies = [ + "windows-link 0.1.3", +] + +[[package]] +name = "windows-version" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e4060a1da109b9d0326b7262c8e12c84df67cc0dbc9e33cf49e01ccc2eb63631" +dependencies = [ + "windows-link 0.2.1", +] + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a9d8416fa8b42f5c947f8482c43e7d89e73a173cead56d044f6a56104a6d1b53" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9d782e804c2f632e395708e99a94275910eb9100b2114651e04744e9b125006" + +[[package]] +name = "windows_i686_gnu" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" + +[[package]] +name = "windows_i686_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" + +[[package]] +name = "windows_i686_gnu" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "960e6da069d81e09becb0ca57a65220ddff016ff2d6af6a223cf372a506593a3" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa7359d10048f68ab8b09fa71c3daccfb0e9b559aed648a8f95469c27057180c" + +[[package]] +name = "windows_i686_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" + +[[package]] +name = "windows_i686_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" + +[[package]] +name = "windows_i686_msvc" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e7ac75179f18232fe9c285163565a57ef8d3c89254a30685b57d83a38d326c2" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c3842cdd74a865a8066ab39c8a7a473c0778a3f29370b5fd6b4b9aa7df4a499" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ffa179e2d07eee8ad8f57493436566c7cc30ac536a3379fdf008f47f6bb7ae1" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.53.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6bbff5f0aada427a1e5a6da5f1f98158182f26556f345ac9e04d36d0ebed650" + +[[package]] +name = "winnow" +version = "0.5.40" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876" +dependencies = [ + "memchr", +] + +[[package]] +name = "winnow" +version = "0.7.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df79d97927682d2fd8adb29682d1140b343be4ac0f08fd68b7765d9c059d3945" + +[[package]] +name = "winnow" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09dac053f1cd375980747450bfc7250c264eaae0583872e845c0c7cd578872b5" +dependencies = [ + "memchr", +] + +[[package]] +name = "winreg" +version = "0.55.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb5a765337c50e9ec252c2069be9bf91c7df47afb103b642ba3a53bf8101be97" +dependencies = [ + "cfg-if", + "windows-sys 0.59.0", +] + +[[package]] +name = "wit-bindgen" +version = "0.51.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d7249219f66ced02969388cf2bb044a09756a083d0fab1e566056b04d9fbcaa5" +dependencies = [ + "wit-bindgen-rust-macro", +] + +[[package]] +name = "wit-bindgen-core" +version = "0.51.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ea61de684c3ea68cb082b7a88508a8b27fcc8b797d738bfc99a82facf1d752dc" +dependencies = [ + "anyhow", + "heck 0.5.0", + "wit-parser", +] + +[[package]] +name = "wit-bindgen-rust" +version = "0.51.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b7c566e0f4b284dd6561c786d9cb0142da491f46a9fbed79ea69cdad5db17f21" +dependencies = [ + "anyhow", + "heck 0.5.0", + "indexmap 2.14.0", + "prettyplease", + "syn 2.0.117", + "wasm-metadata", + "wit-bindgen-core", + "wit-component", +] + +[[package]] +name = "wit-bindgen-rust-macro" +version = "0.51.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c0f9bfd77e6a48eccf51359e3ae77140a7f50b1e2ebfe62422d8afdaffab17a" +dependencies = [ + "anyhow", + "prettyplease", + "proc-macro2", + "quote", + "syn 2.0.117", + "wit-bindgen-core", + "wit-bindgen-rust", +] + +[[package]] +name = "wit-component" +version = "0.244.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d66ea20e9553b30172b5e831994e35fbde2d165325bec84fc43dbf6f4eb9cb2" +dependencies = [ + "anyhow", + "bitflags 2.11.0", + "indexmap 2.14.0", + "log", + "serde", + "serde_derive", + "serde_json", + "wasm-encoder", + "wasm-metadata", + "wasmparser", + "wit-parser", +] + +[[package]] +name = "wit-parser" +version = "0.244.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ecc8ac4bc1dc3381b7f59c34f00b67e18f910c2c0f50015669dde7def656a736" +dependencies = [ + "anyhow", + "id-arena", + "indexmap 2.14.0", + "log", + "semver", + "serde", + "serde_derive", + "serde_json", + "unicode-xid", + "wasmparser", +] + +[[package]] +name = "writeable" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ffae5123b2d3fc086436f8834ae3ab053a283cfac8fe0a0b8eaae044768a4c4" + +[[package]] +name = "wry" +version = "0.54.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5a8135d8676225e5744de000d4dff5a082501bf7db6a1c1495034f8c314edbc" +dependencies = [ + "base64 0.22.1", + "block2", + "cookie", + "crossbeam-channel", + "dirs", + "dom_query", + "dpi", + "dunce", + "gdkx11", + "gtk", + "http", + "javascriptcore-rs", + "jni", + "libc", + "ndk", + "objc2", + "objc2-app-kit", + "objc2-core-foundation", + "objc2-foundation", + "objc2-ui-kit", + "objc2-web-kit", + "once_cell", + "percent-encoding", + "raw-window-handle", + "sha2", + "soup3", + "tao-macros", + "thiserror 2.0.18", + "url", + "webkit2gtk", + "webkit2gtk-sys", + "webview2-com", + "windows", + "windows-core 0.61.2", + "windows-version", + "x11-dl", +] + +[[package]] +name = "x11" +version = "2.21.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "502da5464ccd04011667b11c435cb992822c2c0dbde1770c988480d312a0db2e" +dependencies = [ + "libc", + "pkg-config", +] + +[[package]] +name = "x11-dl" +version = "2.21.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38735924fedd5314a6e548792904ed8c6de6636285cb9fec04d5b1db85c1516f" +dependencies = [ + "libc", + "once_cell", + "pkg-config", +] + +[[package]] +name = "yoke" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "abe8c5fda708d9ca3df187cae8bfb9ceda00dd96231bed36e445a1a48e66f9ca" +dependencies = [ + "stable_deref_trait", + "yoke-derive", + "zerofrom", +] + +[[package]] +name = "yoke-derive" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de844c262c8848816172cef550288e7dc6c7b7814b4ee56b3e1553f275f1858e" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", + "synstructure", +] + +[[package]] +name = "zerocopy" +version = "0.8.48" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eed437bf9d6692032087e337407a86f04cd8d6a16a37199ed57949d415bd68e9" +dependencies = [ + "zerocopy-derive", +] + +[[package]] +name = "zerocopy-derive" +version = "0.8.48" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70e3cd084b1788766f53af483dd21f93881ff30d7320490ec3ef7526d203bad4" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "zerofrom" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69faa1f2a1ea75661980b013019ed6687ed0e83d069bc1114e2cc74c6c04c4df" +dependencies = [ + "zerofrom-derive", +] + +[[package]] +name = "zerofrom-derive" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11532158c46691caf0f2593ea8358fed6bbf68a0315e80aae9bd41fbade684a1" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", + "synstructure", +] + +[[package]] +name = "zerotrie" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f9152d31db0792fa83f70fb2f83148effb5c1f5b8c7686c3459e361d9bc20bf" +dependencies = [ + "displaydoc", + "yoke", + "zerofrom", +] + +[[package]] +name = "zerovec" +version = "0.11.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90f911cbc359ab6af17377d242225f4d75119aec87ea711a880987b18cd7b239" +dependencies = [ + "yoke", + "zerofrom", + "zerovec-derive", +] + +[[package]] +name = "zerovec-derive" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "625dc425cab0dca6dc3c3319506e6593dcb08a9f387ea3b284dbd52a92c40555" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.117", +] + +[[package]] +name = "zmij" +version = "1.0.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8848ee67ecc8aedbaf3e4122217aff892639231befc6a1b58d29fff4c2cabaa" diff --git a/posimai-guard-app/src-tauri/Cargo.toml b/posimai-guard-app/src-tauri/Cargo.toml index f9704b0d..c48d8528 100644 --- a/posimai-guard-app/src-tauri/Cargo.toml +++ b/posimai-guard-app/src-tauri/Cargo.toml @@ -20,6 +20,11 @@ tauri-plugin-shell = "2" serde = { version = "1", features = ["derive"] } serde_json = "1" +[package.metadata.bundle] +name = "Posimai Guard" +identifier = "com.posimai.guard" +icon = ["icons/icon.ico", "icons/icon.icns", "icons/icon.png"] + [profile.release] panic = "abort" codegen-units = 1 diff --git a/posimai-guard-app/src-tauri/capabilities/default.json b/posimai-guard-app/src-tauri/capabilities/default.json new file mode 100644 index 00000000..1cd17a40 --- /dev/null +++ b/posimai-guard-app/src-tauri/capabilities/default.json @@ -0,0 +1,18 @@ +{ + "$schema": "../gen/schemas/desktop-schema.json", + "identifier": "default", + "description": "Posimai Guard desktop capabilities", + "windows": ["main"], + "permissions": [ + "core:default", + "dialog:allow-open", + "dialog:allow-save", + "dialog:allow-message", + "dialog:allow-ask", + "fs:allow-read-text-file", + "fs:allow-write-text-file", + "fs:allow-read-dir", + "fs:allow-exists", + "shell:allow-open" + ] +} diff --git a/posimai-guard-app/src-tauri/gen/schemas/acl-manifests.json b/posimai-guard-app/src-tauri/gen/schemas/acl-manifests.json new file mode 100644 index 00000000..3a0f760a --- /dev/null +++ b/posimai-guard-app/src-tauri/gen/schemas/acl-manifests.json @@ -0,0 +1 @@ +{"core":{"default_permission":{"identifier":"default","description":"Default core plugins set.","permissions":["core:path:default","core:event:default","core:window:default","core:webview:default","core:app:default","core:image:default","core:resources:default","core:menu:default","core:tray:default"]},"permissions":{},"permission_sets":{},"global_scope_schema":null},"core:app":{"default_permission":{"identifier":"default","description":"Default permissions for the plugin.","permissions":["allow-version","allow-name","allow-tauri-version","allow-identifier","allow-bundle-type","allow-register-listener","allow-remove-listener"]},"permissions":{"allow-app-hide":{"identifier":"allow-app-hide","description":"Enables the app_hide command without any pre-configured scope.","commands":{"allow":["app_hide"],"deny":[]}},"allow-app-show":{"identifier":"allow-app-show","description":"Enables the app_show command without any pre-configured scope.","commands":{"allow":["app_show"],"deny":[]}},"allow-bundle-type":{"identifier":"allow-bundle-type","description":"Enables the bundle_type command without any pre-configured scope.","commands":{"allow":["bundle_type"],"deny":[]}},"allow-default-window-icon":{"identifier":"allow-default-window-icon","description":"Enables the default_window_icon command without any pre-configured scope.","commands":{"allow":["default_window_icon"],"deny":[]}},"allow-fetch-data-store-identifiers":{"identifier":"allow-fetch-data-store-identifiers","description":"Enables the fetch_data_store_identifiers command without any pre-configured scope.","commands":{"allow":["fetch_data_store_identifiers"],"deny":[]}},"allow-identifier":{"identifier":"allow-identifier","description":"Enables the identifier command without any pre-configured scope.","commands":{"allow":["identifier"],"deny":[]}},"allow-name":{"identifier":"allow-name","description":"Enables the name command without any pre-configured scope.","commands":{"allow":["name"],"deny":[]}},"allow-register-listener":{"identifier":"allow-register-listener","description":"Enables the register_listener command without any pre-configured scope.","commands":{"allow":["register_listener"],"deny":[]}},"allow-remove-data-store":{"identifier":"allow-remove-data-store","description":"Enables the remove_data_store command without any pre-configured scope.","commands":{"allow":["remove_data_store"],"deny":[]}},"allow-remove-listener":{"identifier":"allow-remove-listener","description":"Enables the remove_listener command without any pre-configured scope.","commands":{"allow":["remove_listener"],"deny":[]}},"allow-set-app-theme":{"identifier":"allow-set-app-theme","description":"Enables the set_app_theme command without any pre-configured scope.","commands":{"allow":["set_app_theme"],"deny":[]}},"allow-set-dock-visibility":{"identifier":"allow-set-dock-visibility","description":"Enables the set_dock_visibility command without any pre-configured scope.","commands":{"allow":["set_dock_visibility"],"deny":[]}},"allow-tauri-version":{"identifier":"allow-tauri-version","description":"Enables the tauri_version command without any pre-configured scope.","commands":{"allow":["tauri_version"],"deny":[]}},"allow-version":{"identifier":"allow-version","description":"Enables the version command without any pre-configured scope.","commands":{"allow":["version"],"deny":[]}},"deny-app-hide":{"identifier":"deny-app-hide","description":"Denies the app_hide command without any pre-configured scope.","commands":{"allow":[],"deny":["app_hide"]}},"deny-app-show":{"identifier":"deny-app-show","description":"Denies the app_show command without any pre-configured scope.","commands":{"allow":[],"deny":["app_show"]}},"deny-bundle-type":{"identifier":"deny-bundle-type","description":"Denies the bundle_type command without any pre-configured scope.","commands":{"allow":[],"deny":["bundle_type"]}},"deny-default-window-icon":{"identifier":"deny-default-window-icon","description":"Denies the default_window_icon command without any pre-configured scope.","commands":{"allow":[],"deny":["default_window_icon"]}},"deny-fetch-data-store-identifiers":{"identifier":"deny-fetch-data-store-identifiers","description":"Denies the fetch_data_store_identifiers command without any pre-configured scope.","commands":{"allow":[],"deny":["fetch_data_store_identifiers"]}},"deny-identifier":{"identifier":"deny-identifier","description":"Denies the identifier command without any pre-configured scope.","commands":{"allow":[],"deny":["identifier"]}},"deny-name":{"identifier":"deny-name","description":"Denies the name command without any pre-configured scope.","commands":{"allow":[],"deny":["name"]}},"deny-register-listener":{"identifier":"deny-register-listener","description":"Denies the register_listener command without any pre-configured scope.","commands":{"allow":[],"deny":["register_listener"]}},"deny-remove-data-store":{"identifier":"deny-remove-data-store","description":"Denies the remove_data_store command without any pre-configured scope.","commands":{"allow":[],"deny":["remove_data_store"]}},"deny-remove-listener":{"identifier":"deny-remove-listener","description":"Denies the remove_listener command without any pre-configured scope.","commands":{"allow":[],"deny":["remove_listener"]}},"deny-set-app-theme":{"identifier":"deny-set-app-theme","description":"Denies the set_app_theme command without any pre-configured scope.","commands":{"allow":[],"deny":["set_app_theme"]}},"deny-set-dock-visibility":{"identifier":"deny-set-dock-visibility","description":"Denies the set_dock_visibility command without any pre-configured scope.","commands":{"allow":[],"deny":["set_dock_visibility"]}},"deny-tauri-version":{"identifier":"deny-tauri-version","description":"Denies the tauri_version command without any pre-configured scope.","commands":{"allow":[],"deny":["tauri_version"]}},"deny-version":{"identifier":"deny-version","description":"Denies the version command without any pre-configured scope.","commands":{"allow":[],"deny":["version"]}}},"permission_sets":{},"global_scope_schema":null},"core:event":{"default_permission":{"identifier":"default","description":"Default permissions for the plugin, which enables all commands.","permissions":["allow-listen","allow-unlisten","allow-emit","allow-emit-to"]},"permissions":{"allow-emit":{"identifier":"allow-emit","description":"Enables the emit command without any pre-configured scope.","commands":{"allow":["emit"],"deny":[]}},"allow-emit-to":{"identifier":"allow-emit-to","description":"Enables the emit_to command without any pre-configured scope.","commands":{"allow":["emit_to"],"deny":[]}},"allow-listen":{"identifier":"allow-listen","description":"Enables the listen command without any pre-configured scope.","commands":{"allow":["listen"],"deny":[]}},"allow-unlisten":{"identifier":"allow-unlisten","description":"Enables the unlisten command without any pre-configured scope.","commands":{"allow":["unlisten"],"deny":[]}},"deny-emit":{"identifier":"deny-emit","description":"Denies the emit command without any pre-configured scope.","commands":{"allow":[],"deny":["emit"]}},"deny-emit-to":{"identifier":"deny-emit-to","description":"Denies the emit_to command without any pre-configured scope.","commands":{"allow":[],"deny":["emit_to"]}},"deny-listen":{"identifier":"deny-listen","description":"Denies the listen command without any pre-configured scope.","commands":{"allow":[],"deny":["listen"]}},"deny-unlisten":{"identifier":"deny-unlisten","description":"Denies the unlisten command without any pre-configured scope.","commands":{"allow":[],"deny":["unlisten"]}}},"permission_sets":{},"global_scope_schema":null},"core:image":{"default_permission":{"identifier":"default","description":"Default permissions for the plugin, which enables all commands.","permissions":["allow-new","allow-from-bytes","allow-from-path","allow-rgba","allow-size"]},"permissions":{"allow-from-bytes":{"identifier":"allow-from-bytes","description":"Enables the from_bytes command without any pre-configured scope.","commands":{"allow":["from_bytes"],"deny":[]}},"allow-from-path":{"identifier":"allow-from-path","description":"Enables the from_path command without any pre-configured scope.","commands":{"allow":["from_path"],"deny":[]}},"allow-new":{"identifier":"allow-new","description":"Enables the new command without any pre-configured scope.","commands":{"allow":["new"],"deny":[]}},"allow-rgba":{"identifier":"allow-rgba","description":"Enables the rgba command without any pre-configured scope.","commands":{"allow":["rgba"],"deny":[]}},"allow-size":{"identifier":"allow-size","description":"Enables the size command without any pre-configured scope.","commands":{"allow":["size"],"deny":[]}},"deny-from-bytes":{"identifier":"deny-from-bytes","description":"Denies the from_bytes command without any pre-configured scope.","commands":{"allow":[],"deny":["from_bytes"]}},"deny-from-path":{"identifier":"deny-from-path","description":"Denies the from_path command without any pre-configured scope.","commands":{"allow":[],"deny":["from_path"]}},"deny-new":{"identifier":"deny-new","description":"Denies the new command without any pre-configured scope.","commands":{"allow":[],"deny":["new"]}},"deny-rgba":{"identifier":"deny-rgba","description":"Denies the rgba command without any pre-configured scope.","commands":{"allow":[],"deny":["rgba"]}},"deny-size":{"identifier":"deny-size","description":"Denies the size command without any pre-configured scope.","commands":{"allow":[],"deny":["size"]}}},"permission_sets":{},"global_scope_schema":null},"core:menu":{"default_permission":{"identifier":"default","description":"Default permissions for the plugin, which enables all commands.","permissions":["allow-new","allow-append","allow-prepend","allow-insert","allow-remove","allow-remove-at","allow-items","allow-get","allow-popup","allow-create-default","allow-set-as-app-menu","allow-set-as-window-menu","allow-text","allow-set-text","allow-is-enabled","allow-set-enabled","allow-set-accelerator","allow-set-as-windows-menu-for-nsapp","allow-set-as-help-menu-for-nsapp","allow-is-checked","allow-set-checked","allow-set-icon"]},"permissions":{"allow-append":{"identifier":"allow-append","description":"Enables the append command without any pre-configured scope.","commands":{"allow":["append"],"deny":[]}},"allow-create-default":{"identifier":"allow-create-default","description":"Enables the create_default command without any pre-configured scope.","commands":{"allow":["create_default"],"deny":[]}},"allow-get":{"identifier":"allow-get","description":"Enables the get command without any pre-configured scope.","commands":{"allow":["get"],"deny":[]}},"allow-insert":{"identifier":"allow-insert","description":"Enables the insert command without any pre-configured scope.","commands":{"allow":["insert"],"deny":[]}},"allow-is-checked":{"identifier":"allow-is-checked","description":"Enables the is_checked command without any pre-configured scope.","commands":{"allow":["is_checked"],"deny":[]}},"allow-is-enabled":{"identifier":"allow-is-enabled","description":"Enables the is_enabled command without any pre-configured scope.","commands":{"allow":["is_enabled"],"deny":[]}},"allow-items":{"identifier":"allow-items","description":"Enables the items command without any pre-configured scope.","commands":{"allow":["items"],"deny":[]}},"allow-new":{"identifier":"allow-new","description":"Enables the new command without any pre-configured scope.","commands":{"allow":["new"],"deny":[]}},"allow-popup":{"identifier":"allow-popup","description":"Enables the popup command without any pre-configured scope.","commands":{"allow":["popup"],"deny":[]}},"allow-prepend":{"identifier":"allow-prepend","description":"Enables the prepend command without any pre-configured scope.","commands":{"allow":["prepend"],"deny":[]}},"allow-remove":{"identifier":"allow-remove","description":"Enables the remove command without any pre-configured scope.","commands":{"allow":["remove"],"deny":[]}},"allow-remove-at":{"identifier":"allow-remove-at","description":"Enables the remove_at command without any pre-configured scope.","commands":{"allow":["remove_at"],"deny":[]}},"allow-set-accelerator":{"identifier":"allow-set-accelerator","description":"Enables the set_accelerator command without any pre-configured scope.","commands":{"allow":["set_accelerator"],"deny":[]}},"allow-set-as-app-menu":{"identifier":"allow-set-as-app-menu","description":"Enables the set_as_app_menu command without any pre-configured scope.","commands":{"allow":["set_as_app_menu"],"deny":[]}},"allow-set-as-help-menu-for-nsapp":{"identifier":"allow-set-as-help-menu-for-nsapp","description":"Enables the set_as_help_menu_for_nsapp command without any pre-configured scope.","commands":{"allow":["set_as_help_menu_for_nsapp"],"deny":[]}},"allow-set-as-window-menu":{"identifier":"allow-set-as-window-menu","description":"Enables the set_as_window_menu command without any pre-configured scope.","commands":{"allow":["set_as_window_menu"],"deny":[]}},"allow-set-as-windows-menu-for-nsapp":{"identifier":"allow-set-as-windows-menu-for-nsapp","description":"Enables the set_as_windows_menu_for_nsapp command without any pre-configured scope.","commands":{"allow":["set_as_windows_menu_for_nsapp"],"deny":[]}},"allow-set-checked":{"identifier":"allow-set-checked","description":"Enables the set_checked command without any pre-configured scope.","commands":{"allow":["set_checked"],"deny":[]}},"allow-set-enabled":{"identifier":"allow-set-enabled","description":"Enables the set_enabled command without any pre-configured scope.","commands":{"allow":["set_enabled"],"deny":[]}},"allow-set-icon":{"identifier":"allow-set-icon","description":"Enables the set_icon command without any pre-configured scope.","commands":{"allow":["set_icon"],"deny":[]}},"allow-set-text":{"identifier":"allow-set-text","description":"Enables the set_text command without any pre-configured scope.","commands":{"allow":["set_text"],"deny":[]}},"allow-text":{"identifier":"allow-text","description":"Enables the text command without any pre-configured scope.","commands":{"allow":["text"],"deny":[]}},"deny-append":{"identifier":"deny-append","description":"Denies the append command without any pre-configured scope.","commands":{"allow":[],"deny":["append"]}},"deny-create-default":{"identifier":"deny-create-default","description":"Denies the create_default command without any pre-configured scope.","commands":{"allow":[],"deny":["create_default"]}},"deny-get":{"identifier":"deny-get","description":"Denies the get command without any pre-configured scope.","commands":{"allow":[],"deny":["get"]}},"deny-insert":{"identifier":"deny-insert","description":"Denies the insert command without any pre-configured scope.","commands":{"allow":[],"deny":["insert"]}},"deny-is-checked":{"identifier":"deny-is-checked","description":"Denies the is_checked command without any pre-configured scope.","commands":{"allow":[],"deny":["is_checked"]}},"deny-is-enabled":{"identifier":"deny-is-enabled","description":"Denies the is_enabled command without any pre-configured scope.","commands":{"allow":[],"deny":["is_enabled"]}},"deny-items":{"identifier":"deny-items","description":"Denies the items command without any pre-configured scope.","commands":{"allow":[],"deny":["items"]}},"deny-new":{"identifier":"deny-new","description":"Denies the new command without any pre-configured scope.","commands":{"allow":[],"deny":["new"]}},"deny-popup":{"identifier":"deny-popup","description":"Denies the popup command without any pre-configured scope.","commands":{"allow":[],"deny":["popup"]}},"deny-prepend":{"identifier":"deny-prepend","description":"Denies the prepend command without any pre-configured scope.","commands":{"allow":[],"deny":["prepend"]}},"deny-remove":{"identifier":"deny-remove","description":"Denies the remove command without any pre-configured scope.","commands":{"allow":[],"deny":["remove"]}},"deny-remove-at":{"identifier":"deny-remove-at","description":"Denies the remove_at command without any pre-configured scope.","commands":{"allow":[],"deny":["remove_at"]}},"deny-set-accelerator":{"identifier":"deny-set-accelerator","description":"Denies the set_accelerator command without any pre-configured scope.","commands":{"allow":[],"deny":["set_accelerator"]}},"deny-set-as-app-menu":{"identifier":"deny-set-as-app-menu","description":"Denies the set_as_app_menu command without any pre-configured scope.","commands":{"allow":[],"deny":["set_as_app_menu"]}},"deny-set-as-help-menu-for-nsapp":{"identifier":"deny-set-as-help-menu-for-nsapp","description":"Denies the set_as_help_menu_for_nsapp command without any pre-configured scope.","commands":{"allow":[],"deny":["set_as_help_menu_for_nsapp"]}},"deny-set-as-window-menu":{"identifier":"deny-set-as-window-menu","description":"Denies the set_as_window_menu command without any pre-configured scope.","commands":{"allow":[],"deny":["set_as_window_menu"]}},"deny-set-as-windows-menu-for-nsapp":{"identifier":"deny-set-as-windows-menu-for-nsapp","description":"Denies the set_as_windows_menu_for_nsapp command without any pre-configured scope.","commands":{"allow":[],"deny":["set_as_windows_menu_for_nsapp"]}},"deny-set-checked":{"identifier":"deny-set-checked","description":"Denies the set_checked command without any pre-configured scope.","commands":{"allow":[],"deny":["set_checked"]}},"deny-set-enabled":{"identifier":"deny-set-enabled","description":"Denies the set_enabled command without any pre-configured scope.","commands":{"allow":[],"deny":["set_enabled"]}},"deny-set-icon":{"identifier":"deny-set-icon","description":"Denies the set_icon command without any pre-configured scope.","commands":{"allow":[],"deny":["set_icon"]}},"deny-set-text":{"identifier":"deny-set-text","description":"Denies the set_text command without any pre-configured scope.","commands":{"allow":[],"deny":["set_text"]}},"deny-text":{"identifier":"deny-text","description":"Denies the text command without any pre-configured scope.","commands":{"allow":[],"deny":["text"]}}},"permission_sets":{},"global_scope_schema":null},"core:path":{"default_permission":{"identifier":"default","description":"Default permissions for the plugin, which enables all commands.","permissions":["allow-resolve-directory","allow-resolve","allow-normalize","allow-join","allow-dirname","allow-extname","allow-basename","allow-is-absolute"]},"permissions":{"allow-basename":{"identifier":"allow-basename","description":"Enables the basename command without any pre-configured scope.","commands":{"allow":["basename"],"deny":[]}},"allow-dirname":{"identifier":"allow-dirname","description":"Enables the dirname command without any pre-configured scope.","commands":{"allow":["dirname"],"deny":[]}},"allow-extname":{"identifier":"allow-extname","description":"Enables the extname command without any pre-configured scope.","commands":{"allow":["extname"],"deny":[]}},"allow-is-absolute":{"identifier":"allow-is-absolute","description":"Enables the is_absolute command without any pre-configured scope.","commands":{"allow":["is_absolute"],"deny":[]}},"allow-join":{"identifier":"allow-join","description":"Enables the join command without any pre-configured scope.","commands":{"allow":["join"],"deny":[]}},"allow-normalize":{"identifier":"allow-normalize","description":"Enables the normalize command without any pre-configured scope.","commands":{"allow":["normalize"],"deny":[]}},"allow-resolve":{"identifier":"allow-resolve","description":"Enables the resolve command without any pre-configured scope.","commands":{"allow":["resolve"],"deny":[]}},"allow-resolve-directory":{"identifier":"allow-resolve-directory","description":"Enables the resolve_directory command without any pre-configured scope.","commands":{"allow":["resolve_directory"],"deny":[]}},"deny-basename":{"identifier":"deny-basename","description":"Denies the basename command without any pre-configured scope.","commands":{"allow":[],"deny":["basename"]}},"deny-dirname":{"identifier":"deny-dirname","description":"Denies the dirname command without any pre-configured scope.","commands":{"allow":[],"deny":["dirname"]}},"deny-extname":{"identifier":"deny-extname","description":"Denies the extname command without any pre-configured scope.","commands":{"allow":[],"deny":["extname"]}},"deny-is-absolute":{"identifier":"deny-is-absolute","description":"Denies the is_absolute command without any pre-configured scope.","commands":{"allow":[],"deny":["is_absolute"]}},"deny-join":{"identifier":"deny-join","description":"Denies the join command without any pre-configured scope.","commands":{"allow":[],"deny":["join"]}},"deny-normalize":{"identifier":"deny-normalize","description":"Denies the normalize command without any pre-configured scope.","commands":{"allow":[],"deny":["normalize"]}},"deny-resolve":{"identifier":"deny-resolve","description":"Denies the resolve command without any pre-configured scope.","commands":{"allow":[],"deny":["resolve"]}},"deny-resolve-directory":{"identifier":"deny-resolve-directory","description":"Denies the resolve_directory command without any pre-configured scope.","commands":{"allow":[],"deny":["resolve_directory"]}}},"permission_sets":{},"global_scope_schema":null},"core:resources":{"default_permission":{"identifier":"default","description":"Default permissions for the plugin, which enables all commands.","permissions":["allow-close"]},"permissions":{"allow-close":{"identifier":"allow-close","description":"Enables the close command without any pre-configured scope.","commands":{"allow":["close"],"deny":[]}},"deny-close":{"identifier":"deny-close","description":"Denies the close command without any pre-configured scope.","commands":{"allow":[],"deny":["close"]}}},"permission_sets":{},"global_scope_schema":null},"core:tray":{"default_permission":{"identifier":"default","description":"Default permissions for the plugin, which enables all commands.","permissions":["allow-new","allow-get-by-id","allow-remove-by-id","allow-set-icon","allow-set-menu","allow-set-tooltip","allow-set-title","allow-set-visible","allow-set-temp-dir-path","allow-set-icon-as-template","allow-set-show-menu-on-left-click"]},"permissions":{"allow-get-by-id":{"identifier":"allow-get-by-id","description":"Enables the get_by_id command without any pre-configured scope.","commands":{"allow":["get_by_id"],"deny":[]}},"allow-new":{"identifier":"allow-new","description":"Enables the new command without any pre-configured scope.","commands":{"allow":["new"],"deny":[]}},"allow-remove-by-id":{"identifier":"allow-remove-by-id","description":"Enables the remove_by_id command without any pre-configured scope.","commands":{"allow":["remove_by_id"],"deny":[]}},"allow-set-icon":{"identifier":"allow-set-icon","description":"Enables the set_icon command without any pre-configured scope.","commands":{"allow":["set_icon"],"deny":[]}},"allow-set-icon-as-template":{"identifier":"allow-set-icon-as-template","description":"Enables the set_icon_as_template command without any pre-configured scope.","commands":{"allow":["set_icon_as_template"],"deny":[]}},"allow-set-menu":{"identifier":"allow-set-menu","description":"Enables the set_menu command without any pre-configured scope.","commands":{"allow":["set_menu"],"deny":[]}},"allow-set-show-menu-on-left-click":{"identifier":"allow-set-show-menu-on-left-click","description":"Enables the set_show_menu_on_left_click command without any pre-configured scope.","commands":{"allow":["set_show_menu_on_left_click"],"deny":[]}},"allow-set-temp-dir-path":{"identifier":"allow-set-temp-dir-path","description":"Enables the set_temp_dir_path command without any pre-configured scope.","commands":{"allow":["set_temp_dir_path"],"deny":[]}},"allow-set-title":{"identifier":"allow-set-title","description":"Enables the set_title command without any pre-configured scope.","commands":{"allow":["set_title"],"deny":[]}},"allow-set-tooltip":{"identifier":"allow-set-tooltip","description":"Enables the set_tooltip command without any pre-configured scope.","commands":{"allow":["set_tooltip"],"deny":[]}},"allow-set-visible":{"identifier":"allow-set-visible","description":"Enables the set_visible command without any pre-configured scope.","commands":{"allow":["set_visible"],"deny":[]}},"deny-get-by-id":{"identifier":"deny-get-by-id","description":"Denies the get_by_id command without any pre-configured scope.","commands":{"allow":[],"deny":["get_by_id"]}},"deny-new":{"identifier":"deny-new","description":"Denies the new command without any pre-configured scope.","commands":{"allow":[],"deny":["new"]}},"deny-remove-by-id":{"identifier":"deny-remove-by-id","description":"Denies the remove_by_id command without any pre-configured scope.","commands":{"allow":[],"deny":["remove_by_id"]}},"deny-set-icon":{"identifier":"deny-set-icon","description":"Denies the set_icon command without any pre-configured scope.","commands":{"allow":[],"deny":["set_icon"]}},"deny-set-icon-as-template":{"identifier":"deny-set-icon-as-template","description":"Denies the set_icon_as_template command without any pre-configured scope.","commands":{"allow":[],"deny":["set_icon_as_template"]}},"deny-set-menu":{"identifier":"deny-set-menu","description":"Denies the set_menu command without any pre-configured scope.","commands":{"allow":[],"deny":["set_menu"]}},"deny-set-show-menu-on-left-click":{"identifier":"deny-set-show-menu-on-left-click","description":"Denies the set_show_menu_on_left_click command without any pre-configured scope.","commands":{"allow":[],"deny":["set_show_menu_on_left_click"]}},"deny-set-temp-dir-path":{"identifier":"deny-set-temp-dir-path","description":"Denies the set_temp_dir_path command without any pre-configured scope.","commands":{"allow":[],"deny":["set_temp_dir_path"]}},"deny-set-title":{"identifier":"deny-set-title","description":"Denies the set_title command without any pre-configured scope.","commands":{"allow":[],"deny":["set_title"]}},"deny-set-tooltip":{"identifier":"deny-set-tooltip","description":"Denies the set_tooltip command without any pre-configured scope.","commands":{"allow":[],"deny":["set_tooltip"]}},"deny-set-visible":{"identifier":"deny-set-visible","description":"Denies the set_visible command without any pre-configured scope.","commands":{"allow":[],"deny":["set_visible"]}}},"permission_sets":{},"global_scope_schema":null},"core:webview":{"default_permission":{"identifier":"default","description":"Default permissions for the plugin.","permissions":["allow-get-all-webviews","allow-webview-position","allow-webview-size","allow-internal-toggle-devtools"]},"permissions":{"allow-clear-all-browsing-data":{"identifier":"allow-clear-all-browsing-data","description":"Enables the clear_all_browsing_data command without any pre-configured scope.","commands":{"allow":["clear_all_browsing_data"],"deny":[]}},"allow-create-webview":{"identifier":"allow-create-webview","description":"Enables the create_webview command without any pre-configured scope.","commands":{"allow":["create_webview"],"deny":[]}},"allow-create-webview-window":{"identifier":"allow-create-webview-window","description":"Enables the create_webview_window command without any pre-configured scope.","commands":{"allow":["create_webview_window"],"deny":[]}},"allow-get-all-webviews":{"identifier":"allow-get-all-webviews","description":"Enables the get_all_webviews command without any pre-configured scope.","commands":{"allow":["get_all_webviews"],"deny":[]}},"allow-internal-toggle-devtools":{"identifier":"allow-internal-toggle-devtools","description":"Enables the internal_toggle_devtools command without any pre-configured scope.","commands":{"allow":["internal_toggle_devtools"],"deny":[]}},"allow-print":{"identifier":"allow-print","description":"Enables the print command without any pre-configured scope.","commands":{"allow":["print"],"deny":[]}},"allow-reparent":{"identifier":"allow-reparent","description":"Enables the reparent command without any pre-configured scope.","commands":{"allow":["reparent"],"deny":[]}},"allow-set-webview-auto-resize":{"identifier":"allow-set-webview-auto-resize","description":"Enables the set_webview_auto_resize command without any pre-configured scope.","commands":{"allow":["set_webview_auto_resize"],"deny":[]}},"allow-set-webview-background-color":{"identifier":"allow-set-webview-background-color","description":"Enables the set_webview_background_color command without any pre-configured scope.","commands":{"allow":["set_webview_background_color"],"deny":[]}},"allow-set-webview-focus":{"identifier":"allow-set-webview-focus","description":"Enables the set_webview_focus command without any pre-configured scope.","commands":{"allow":["set_webview_focus"],"deny":[]}},"allow-set-webview-position":{"identifier":"allow-set-webview-position","description":"Enables the set_webview_position command without any pre-configured scope.","commands":{"allow":["set_webview_position"],"deny":[]}},"allow-set-webview-size":{"identifier":"allow-set-webview-size","description":"Enables the set_webview_size command without any pre-configured scope.","commands":{"allow":["set_webview_size"],"deny":[]}},"allow-set-webview-zoom":{"identifier":"allow-set-webview-zoom","description":"Enables the set_webview_zoom command without any pre-configured scope.","commands":{"allow":["set_webview_zoom"],"deny":[]}},"allow-webview-close":{"identifier":"allow-webview-close","description":"Enables the webview_close command without any pre-configured scope.","commands":{"allow":["webview_close"],"deny":[]}},"allow-webview-hide":{"identifier":"allow-webview-hide","description":"Enables the webview_hide command without any pre-configured scope.","commands":{"allow":["webview_hide"],"deny":[]}},"allow-webview-position":{"identifier":"allow-webview-position","description":"Enables the webview_position command without any pre-configured scope.","commands":{"allow":["webview_position"],"deny":[]}},"allow-webview-show":{"identifier":"allow-webview-show","description":"Enables the webview_show command without any pre-configured scope.","commands":{"allow":["webview_show"],"deny":[]}},"allow-webview-size":{"identifier":"allow-webview-size","description":"Enables the webview_size command without any pre-configured scope.","commands":{"allow":["webview_size"],"deny":[]}},"deny-clear-all-browsing-data":{"identifier":"deny-clear-all-browsing-data","description":"Denies the clear_all_browsing_data command without any pre-configured scope.","commands":{"allow":[],"deny":["clear_all_browsing_data"]}},"deny-create-webview":{"identifier":"deny-create-webview","description":"Denies the create_webview command without any pre-configured scope.","commands":{"allow":[],"deny":["create_webview"]}},"deny-create-webview-window":{"identifier":"deny-create-webview-window","description":"Denies the create_webview_window command without any pre-configured scope.","commands":{"allow":[],"deny":["create_webview_window"]}},"deny-get-all-webviews":{"identifier":"deny-get-all-webviews","description":"Denies the get_all_webviews command without any pre-configured scope.","commands":{"allow":[],"deny":["get_all_webviews"]}},"deny-internal-toggle-devtools":{"identifier":"deny-internal-toggle-devtools","description":"Denies the internal_toggle_devtools command without any pre-configured scope.","commands":{"allow":[],"deny":["internal_toggle_devtools"]}},"deny-print":{"identifier":"deny-print","description":"Denies the print command without any pre-configured scope.","commands":{"allow":[],"deny":["print"]}},"deny-reparent":{"identifier":"deny-reparent","description":"Denies the reparent command without any pre-configured scope.","commands":{"allow":[],"deny":["reparent"]}},"deny-set-webview-auto-resize":{"identifier":"deny-set-webview-auto-resize","description":"Denies the set_webview_auto_resize command without any pre-configured scope.","commands":{"allow":[],"deny":["set_webview_auto_resize"]}},"deny-set-webview-background-color":{"identifier":"deny-set-webview-background-color","description":"Denies the set_webview_background_color command without any pre-configured scope.","commands":{"allow":[],"deny":["set_webview_background_color"]}},"deny-set-webview-focus":{"identifier":"deny-set-webview-focus","description":"Denies the set_webview_focus command without any pre-configured scope.","commands":{"allow":[],"deny":["set_webview_focus"]}},"deny-set-webview-position":{"identifier":"deny-set-webview-position","description":"Denies the set_webview_position command without any pre-configured scope.","commands":{"allow":[],"deny":["set_webview_position"]}},"deny-set-webview-size":{"identifier":"deny-set-webview-size","description":"Denies the set_webview_size command without any pre-configured scope.","commands":{"allow":[],"deny":["set_webview_size"]}},"deny-set-webview-zoom":{"identifier":"deny-set-webview-zoom","description":"Denies the set_webview_zoom command without any pre-configured scope.","commands":{"allow":[],"deny":["set_webview_zoom"]}},"deny-webview-close":{"identifier":"deny-webview-close","description":"Denies the webview_close command without any pre-configured scope.","commands":{"allow":[],"deny":["webview_close"]}},"deny-webview-hide":{"identifier":"deny-webview-hide","description":"Denies the webview_hide command without any pre-configured scope.","commands":{"allow":[],"deny":["webview_hide"]}},"deny-webview-position":{"identifier":"deny-webview-position","description":"Denies the webview_position command without any pre-configured scope.","commands":{"allow":[],"deny":["webview_position"]}},"deny-webview-show":{"identifier":"deny-webview-show","description":"Denies the webview_show command without any pre-configured scope.","commands":{"allow":[],"deny":["webview_show"]}},"deny-webview-size":{"identifier":"deny-webview-size","description":"Denies the webview_size command without any pre-configured scope.","commands":{"allow":[],"deny":["webview_size"]}}},"permission_sets":{},"global_scope_schema":null},"core:window":{"default_permission":{"identifier":"default","description":"Default permissions for the plugin.","permissions":["allow-get-all-windows","allow-scale-factor","allow-inner-position","allow-outer-position","allow-inner-size","allow-outer-size","allow-is-fullscreen","allow-is-minimized","allow-is-maximized","allow-is-focused","allow-is-decorated","allow-is-resizable","allow-is-maximizable","allow-is-minimizable","allow-is-closable","allow-is-visible","allow-is-enabled","allow-title","allow-current-monitor","allow-primary-monitor","allow-monitor-from-point","allow-available-monitors","allow-cursor-position","allow-theme","allow-is-always-on-top","allow-internal-toggle-maximize"]},"permissions":{"allow-available-monitors":{"identifier":"allow-available-monitors","description":"Enables the available_monitors command without any pre-configured scope.","commands":{"allow":["available_monitors"],"deny":[]}},"allow-center":{"identifier":"allow-center","description":"Enables the center command without any pre-configured scope.","commands":{"allow":["center"],"deny":[]}},"allow-close":{"identifier":"allow-close","description":"Enables the close command without any pre-configured scope.","commands":{"allow":["close"],"deny":[]}},"allow-create":{"identifier":"allow-create","description":"Enables the create command without any pre-configured scope.","commands":{"allow":["create"],"deny":[]}},"allow-current-monitor":{"identifier":"allow-current-monitor","description":"Enables the current_monitor command without any pre-configured scope.","commands":{"allow":["current_monitor"],"deny":[]}},"allow-cursor-position":{"identifier":"allow-cursor-position","description":"Enables the cursor_position command without any pre-configured scope.","commands":{"allow":["cursor_position"],"deny":[]}},"allow-destroy":{"identifier":"allow-destroy","description":"Enables the destroy command without any pre-configured scope.","commands":{"allow":["destroy"],"deny":[]}},"allow-get-all-windows":{"identifier":"allow-get-all-windows","description":"Enables the get_all_windows command without any pre-configured scope.","commands":{"allow":["get_all_windows"],"deny":[]}},"allow-hide":{"identifier":"allow-hide","description":"Enables the hide command without any pre-configured scope.","commands":{"allow":["hide"],"deny":[]}},"allow-inner-position":{"identifier":"allow-inner-position","description":"Enables the inner_position command without any pre-configured scope.","commands":{"allow":["inner_position"],"deny":[]}},"allow-inner-size":{"identifier":"allow-inner-size","description":"Enables the inner_size command without any pre-configured scope.","commands":{"allow":["inner_size"],"deny":[]}},"allow-internal-toggle-maximize":{"identifier":"allow-internal-toggle-maximize","description":"Enables the internal_toggle_maximize command without any pre-configured scope.","commands":{"allow":["internal_toggle_maximize"],"deny":[]}},"allow-is-always-on-top":{"identifier":"allow-is-always-on-top","description":"Enables the is_always_on_top command without any pre-configured scope.","commands":{"allow":["is_always_on_top"],"deny":[]}},"allow-is-closable":{"identifier":"allow-is-closable","description":"Enables the is_closable command without any pre-configured scope.","commands":{"allow":["is_closable"],"deny":[]}},"allow-is-decorated":{"identifier":"allow-is-decorated","description":"Enables the is_decorated command without any pre-configured scope.","commands":{"allow":["is_decorated"],"deny":[]}},"allow-is-enabled":{"identifier":"allow-is-enabled","description":"Enables the is_enabled command without any pre-configured scope.","commands":{"allow":["is_enabled"],"deny":[]}},"allow-is-focused":{"identifier":"allow-is-focused","description":"Enables the is_focused command without any pre-configured scope.","commands":{"allow":["is_focused"],"deny":[]}},"allow-is-fullscreen":{"identifier":"allow-is-fullscreen","description":"Enables the is_fullscreen command without any pre-configured scope.","commands":{"allow":["is_fullscreen"],"deny":[]}},"allow-is-maximizable":{"identifier":"allow-is-maximizable","description":"Enables the is_maximizable command without any pre-configured scope.","commands":{"allow":["is_maximizable"],"deny":[]}},"allow-is-maximized":{"identifier":"allow-is-maximized","description":"Enables the is_maximized command without any pre-configured scope.","commands":{"allow":["is_maximized"],"deny":[]}},"allow-is-minimizable":{"identifier":"allow-is-minimizable","description":"Enables the is_minimizable command without any pre-configured scope.","commands":{"allow":["is_minimizable"],"deny":[]}},"allow-is-minimized":{"identifier":"allow-is-minimized","description":"Enables the is_minimized command without any pre-configured scope.","commands":{"allow":["is_minimized"],"deny":[]}},"allow-is-resizable":{"identifier":"allow-is-resizable","description":"Enables the is_resizable command without any pre-configured scope.","commands":{"allow":["is_resizable"],"deny":[]}},"allow-is-visible":{"identifier":"allow-is-visible","description":"Enables the is_visible command without any pre-configured scope.","commands":{"allow":["is_visible"],"deny":[]}},"allow-maximize":{"identifier":"allow-maximize","description":"Enables the maximize command without any pre-configured scope.","commands":{"allow":["maximize"],"deny":[]}},"allow-minimize":{"identifier":"allow-minimize","description":"Enables the minimize command without any pre-configured scope.","commands":{"allow":["minimize"],"deny":[]}},"allow-monitor-from-point":{"identifier":"allow-monitor-from-point","description":"Enables the monitor_from_point command without any pre-configured scope.","commands":{"allow":["monitor_from_point"],"deny":[]}},"allow-outer-position":{"identifier":"allow-outer-position","description":"Enables the outer_position command without any pre-configured scope.","commands":{"allow":["outer_position"],"deny":[]}},"allow-outer-size":{"identifier":"allow-outer-size","description":"Enables the outer_size command without any pre-configured scope.","commands":{"allow":["outer_size"],"deny":[]}},"allow-primary-monitor":{"identifier":"allow-primary-monitor","description":"Enables the primary_monitor command without any pre-configured scope.","commands":{"allow":["primary_monitor"],"deny":[]}},"allow-request-user-attention":{"identifier":"allow-request-user-attention","description":"Enables the request_user_attention command without any pre-configured scope.","commands":{"allow":["request_user_attention"],"deny":[]}},"allow-scale-factor":{"identifier":"allow-scale-factor","description":"Enables the scale_factor command without any pre-configured scope.","commands":{"allow":["scale_factor"],"deny":[]}},"allow-set-always-on-bottom":{"identifier":"allow-set-always-on-bottom","description":"Enables the set_always_on_bottom command without any pre-configured scope.","commands":{"allow":["set_always_on_bottom"],"deny":[]}},"allow-set-always-on-top":{"identifier":"allow-set-always-on-top","description":"Enables the set_always_on_top command without any pre-configured scope.","commands":{"allow":["set_always_on_top"],"deny":[]}},"allow-set-background-color":{"identifier":"allow-set-background-color","description":"Enables the set_background_color command without any pre-configured scope.","commands":{"allow":["set_background_color"],"deny":[]}},"allow-set-badge-count":{"identifier":"allow-set-badge-count","description":"Enables the set_badge_count command without any pre-configured scope.","commands":{"allow":["set_badge_count"],"deny":[]}},"allow-set-badge-label":{"identifier":"allow-set-badge-label","description":"Enables the set_badge_label command without any pre-configured scope.","commands":{"allow":["set_badge_label"],"deny":[]}},"allow-set-closable":{"identifier":"allow-set-closable","description":"Enables the set_closable command without any pre-configured scope.","commands":{"allow":["set_closable"],"deny":[]}},"allow-set-content-protected":{"identifier":"allow-set-content-protected","description":"Enables the set_content_protected command without any pre-configured scope.","commands":{"allow":["set_content_protected"],"deny":[]}},"allow-set-cursor-grab":{"identifier":"allow-set-cursor-grab","description":"Enables the set_cursor_grab command without any pre-configured scope.","commands":{"allow":["set_cursor_grab"],"deny":[]}},"allow-set-cursor-icon":{"identifier":"allow-set-cursor-icon","description":"Enables the set_cursor_icon command without any pre-configured scope.","commands":{"allow":["set_cursor_icon"],"deny":[]}},"allow-set-cursor-position":{"identifier":"allow-set-cursor-position","description":"Enables the set_cursor_position command without any pre-configured scope.","commands":{"allow":["set_cursor_position"],"deny":[]}},"allow-set-cursor-visible":{"identifier":"allow-set-cursor-visible","description":"Enables the set_cursor_visible command without any pre-configured scope.","commands":{"allow":["set_cursor_visible"],"deny":[]}},"allow-set-decorations":{"identifier":"allow-set-decorations","description":"Enables the set_decorations command without any pre-configured scope.","commands":{"allow":["set_decorations"],"deny":[]}},"allow-set-effects":{"identifier":"allow-set-effects","description":"Enables the set_effects command without any pre-configured scope.","commands":{"allow":["set_effects"],"deny":[]}},"allow-set-enabled":{"identifier":"allow-set-enabled","description":"Enables the set_enabled command without any pre-configured scope.","commands":{"allow":["set_enabled"],"deny":[]}},"allow-set-focus":{"identifier":"allow-set-focus","description":"Enables the set_focus command without any pre-configured scope.","commands":{"allow":["set_focus"],"deny":[]}},"allow-set-focusable":{"identifier":"allow-set-focusable","description":"Enables the set_focusable command without any pre-configured scope.","commands":{"allow":["set_focusable"],"deny":[]}},"allow-set-fullscreen":{"identifier":"allow-set-fullscreen","description":"Enables the set_fullscreen command without any pre-configured scope.","commands":{"allow":["set_fullscreen"],"deny":[]}},"allow-set-icon":{"identifier":"allow-set-icon","description":"Enables the set_icon command without any pre-configured scope.","commands":{"allow":["set_icon"],"deny":[]}},"allow-set-ignore-cursor-events":{"identifier":"allow-set-ignore-cursor-events","description":"Enables the set_ignore_cursor_events command without any pre-configured scope.","commands":{"allow":["set_ignore_cursor_events"],"deny":[]}},"allow-set-max-size":{"identifier":"allow-set-max-size","description":"Enables the set_max_size command without any pre-configured scope.","commands":{"allow":["set_max_size"],"deny":[]}},"allow-set-maximizable":{"identifier":"allow-set-maximizable","description":"Enables the set_maximizable command without any pre-configured scope.","commands":{"allow":["set_maximizable"],"deny":[]}},"allow-set-min-size":{"identifier":"allow-set-min-size","description":"Enables the set_min_size command without any pre-configured scope.","commands":{"allow":["set_min_size"],"deny":[]}},"allow-set-minimizable":{"identifier":"allow-set-minimizable","description":"Enables the set_minimizable command without any pre-configured scope.","commands":{"allow":["set_minimizable"],"deny":[]}},"allow-set-overlay-icon":{"identifier":"allow-set-overlay-icon","description":"Enables the set_overlay_icon command without any pre-configured scope.","commands":{"allow":["set_overlay_icon"],"deny":[]}},"allow-set-position":{"identifier":"allow-set-position","description":"Enables the set_position command without any pre-configured scope.","commands":{"allow":["set_position"],"deny":[]}},"allow-set-progress-bar":{"identifier":"allow-set-progress-bar","description":"Enables the set_progress_bar command without any pre-configured scope.","commands":{"allow":["set_progress_bar"],"deny":[]}},"allow-set-resizable":{"identifier":"allow-set-resizable","description":"Enables the set_resizable command without any pre-configured scope.","commands":{"allow":["set_resizable"],"deny":[]}},"allow-set-shadow":{"identifier":"allow-set-shadow","description":"Enables the set_shadow command without any pre-configured scope.","commands":{"allow":["set_shadow"],"deny":[]}},"allow-set-simple-fullscreen":{"identifier":"allow-set-simple-fullscreen","description":"Enables the set_simple_fullscreen command without any pre-configured scope.","commands":{"allow":["set_simple_fullscreen"],"deny":[]}},"allow-set-size":{"identifier":"allow-set-size","description":"Enables the set_size command without any pre-configured scope.","commands":{"allow":["set_size"],"deny":[]}},"allow-set-size-constraints":{"identifier":"allow-set-size-constraints","description":"Enables the set_size_constraints command without any pre-configured scope.","commands":{"allow":["set_size_constraints"],"deny":[]}},"allow-set-skip-taskbar":{"identifier":"allow-set-skip-taskbar","description":"Enables the set_skip_taskbar command without any pre-configured scope.","commands":{"allow":["set_skip_taskbar"],"deny":[]}},"allow-set-theme":{"identifier":"allow-set-theme","description":"Enables the set_theme command without any pre-configured scope.","commands":{"allow":["set_theme"],"deny":[]}},"allow-set-title":{"identifier":"allow-set-title","description":"Enables the set_title command without any pre-configured scope.","commands":{"allow":["set_title"],"deny":[]}},"allow-set-title-bar-style":{"identifier":"allow-set-title-bar-style","description":"Enables the set_title_bar_style command without any pre-configured scope.","commands":{"allow":["set_title_bar_style"],"deny":[]}},"allow-set-visible-on-all-workspaces":{"identifier":"allow-set-visible-on-all-workspaces","description":"Enables the set_visible_on_all_workspaces command without any pre-configured scope.","commands":{"allow":["set_visible_on_all_workspaces"],"deny":[]}},"allow-show":{"identifier":"allow-show","description":"Enables the show command without any pre-configured scope.","commands":{"allow":["show"],"deny":[]}},"allow-start-dragging":{"identifier":"allow-start-dragging","description":"Enables the start_dragging command without any pre-configured scope.","commands":{"allow":["start_dragging"],"deny":[]}},"allow-start-resize-dragging":{"identifier":"allow-start-resize-dragging","description":"Enables the start_resize_dragging command without any pre-configured scope.","commands":{"allow":["start_resize_dragging"],"deny":[]}},"allow-theme":{"identifier":"allow-theme","description":"Enables the theme command without any pre-configured scope.","commands":{"allow":["theme"],"deny":[]}},"allow-title":{"identifier":"allow-title","description":"Enables the title command without any pre-configured scope.","commands":{"allow":["title"],"deny":[]}},"allow-toggle-maximize":{"identifier":"allow-toggle-maximize","description":"Enables the toggle_maximize command without any pre-configured scope.","commands":{"allow":["toggle_maximize"],"deny":[]}},"allow-unmaximize":{"identifier":"allow-unmaximize","description":"Enables the unmaximize command without any pre-configured scope.","commands":{"allow":["unmaximize"],"deny":[]}},"allow-unminimize":{"identifier":"allow-unminimize","description":"Enables the unminimize command without any pre-configured scope.","commands":{"allow":["unminimize"],"deny":[]}},"deny-available-monitors":{"identifier":"deny-available-monitors","description":"Denies the available_monitors command without any pre-configured scope.","commands":{"allow":[],"deny":["available_monitors"]}},"deny-center":{"identifier":"deny-center","description":"Denies the center command without any pre-configured scope.","commands":{"allow":[],"deny":["center"]}},"deny-close":{"identifier":"deny-close","description":"Denies the close command without any pre-configured scope.","commands":{"allow":[],"deny":["close"]}},"deny-create":{"identifier":"deny-create","description":"Denies the create command without any pre-configured scope.","commands":{"allow":[],"deny":["create"]}},"deny-current-monitor":{"identifier":"deny-current-monitor","description":"Denies the current_monitor command without any pre-configured scope.","commands":{"allow":[],"deny":["current_monitor"]}},"deny-cursor-position":{"identifier":"deny-cursor-position","description":"Denies the cursor_position command without any pre-configured scope.","commands":{"allow":[],"deny":["cursor_position"]}},"deny-destroy":{"identifier":"deny-destroy","description":"Denies the destroy command without any pre-configured scope.","commands":{"allow":[],"deny":["destroy"]}},"deny-get-all-windows":{"identifier":"deny-get-all-windows","description":"Denies the get_all_windows command without any pre-configured scope.","commands":{"allow":[],"deny":["get_all_windows"]}},"deny-hide":{"identifier":"deny-hide","description":"Denies the hide command without any pre-configured scope.","commands":{"allow":[],"deny":["hide"]}},"deny-inner-position":{"identifier":"deny-inner-position","description":"Denies the inner_position command without any pre-configured scope.","commands":{"allow":[],"deny":["inner_position"]}},"deny-inner-size":{"identifier":"deny-inner-size","description":"Denies the inner_size command without any pre-configured scope.","commands":{"allow":[],"deny":["inner_size"]}},"deny-internal-toggle-maximize":{"identifier":"deny-internal-toggle-maximize","description":"Denies the internal_toggle_maximize command without any pre-configured scope.","commands":{"allow":[],"deny":["internal_toggle_maximize"]}},"deny-is-always-on-top":{"identifier":"deny-is-always-on-top","description":"Denies the is_always_on_top command without any pre-configured scope.","commands":{"allow":[],"deny":["is_always_on_top"]}},"deny-is-closable":{"identifier":"deny-is-closable","description":"Denies the is_closable command without any pre-configured scope.","commands":{"allow":[],"deny":["is_closable"]}},"deny-is-decorated":{"identifier":"deny-is-decorated","description":"Denies the is_decorated command without any pre-configured scope.","commands":{"allow":[],"deny":["is_decorated"]}},"deny-is-enabled":{"identifier":"deny-is-enabled","description":"Denies the is_enabled command without any pre-configured scope.","commands":{"allow":[],"deny":["is_enabled"]}},"deny-is-focused":{"identifier":"deny-is-focused","description":"Denies the is_focused command without any pre-configured scope.","commands":{"allow":[],"deny":["is_focused"]}},"deny-is-fullscreen":{"identifier":"deny-is-fullscreen","description":"Denies the is_fullscreen command without any pre-configured scope.","commands":{"allow":[],"deny":["is_fullscreen"]}},"deny-is-maximizable":{"identifier":"deny-is-maximizable","description":"Denies the is_maximizable command without any pre-configured scope.","commands":{"allow":[],"deny":["is_maximizable"]}},"deny-is-maximized":{"identifier":"deny-is-maximized","description":"Denies the is_maximized command without any pre-configured scope.","commands":{"allow":[],"deny":["is_maximized"]}},"deny-is-minimizable":{"identifier":"deny-is-minimizable","description":"Denies the is_minimizable command without any pre-configured scope.","commands":{"allow":[],"deny":["is_minimizable"]}},"deny-is-minimized":{"identifier":"deny-is-minimized","description":"Denies the is_minimized command without any pre-configured scope.","commands":{"allow":[],"deny":["is_minimized"]}},"deny-is-resizable":{"identifier":"deny-is-resizable","description":"Denies the is_resizable command without any pre-configured scope.","commands":{"allow":[],"deny":["is_resizable"]}},"deny-is-visible":{"identifier":"deny-is-visible","description":"Denies the is_visible command without any pre-configured scope.","commands":{"allow":[],"deny":["is_visible"]}},"deny-maximize":{"identifier":"deny-maximize","description":"Denies the maximize command without any pre-configured scope.","commands":{"allow":[],"deny":["maximize"]}},"deny-minimize":{"identifier":"deny-minimize","description":"Denies the minimize command without any pre-configured scope.","commands":{"allow":[],"deny":["minimize"]}},"deny-monitor-from-point":{"identifier":"deny-monitor-from-point","description":"Denies the monitor_from_point command without any pre-configured scope.","commands":{"allow":[],"deny":["monitor_from_point"]}},"deny-outer-position":{"identifier":"deny-outer-position","description":"Denies the outer_position command without any pre-configured scope.","commands":{"allow":[],"deny":["outer_position"]}},"deny-outer-size":{"identifier":"deny-outer-size","description":"Denies the outer_size command without any pre-configured scope.","commands":{"allow":[],"deny":["outer_size"]}},"deny-primary-monitor":{"identifier":"deny-primary-monitor","description":"Denies the primary_monitor command without any pre-configured scope.","commands":{"allow":[],"deny":["primary_monitor"]}},"deny-request-user-attention":{"identifier":"deny-request-user-attention","description":"Denies the request_user_attention command without any pre-configured scope.","commands":{"allow":[],"deny":["request_user_attention"]}},"deny-scale-factor":{"identifier":"deny-scale-factor","description":"Denies the scale_factor command without any pre-configured scope.","commands":{"allow":[],"deny":["scale_factor"]}},"deny-set-always-on-bottom":{"identifier":"deny-set-always-on-bottom","description":"Denies the set_always_on_bottom command without any pre-configured scope.","commands":{"allow":[],"deny":["set_always_on_bottom"]}},"deny-set-always-on-top":{"identifier":"deny-set-always-on-top","description":"Denies the set_always_on_top command without any pre-configured scope.","commands":{"allow":[],"deny":["set_always_on_top"]}},"deny-set-background-color":{"identifier":"deny-set-background-color","description":"Denies the set_background_color command without any pre-configured scope.","commands":{"allow":[],"deny":["set_background_color"]}},"deny-set-badge-count":{"identifier":"deny-set-badge-count","description":"Denies the set_badge_count command without any pre-configured scope.","commands":{"allow":[],"deny":["set_badge_count"]}},"deny-set-badge-label":{"identifier":"deny-set-badge-label","description":"Denies the set_badge_label command without any pre-configured scope.","commands":{"allow":[],"deny":["set_badge_label"]}},"deny-set-closable":{"identifier":"deny-set-closable","description":"Denies the set_closable command without any pre-configured scope.","commands":{"allow":[],"deny":["set_closable"]}},"deny-set-content-protected":{"identifier":"deny-set-content-protected","description":"Denies the set_content_protected command without any pre-configured scope.","commands":{"allow":[],"deny":["set_content_protected"]}},"deny-set-cursor-grab":{"identifier":"deny-set-cursor-grab","description":"Denies the set_cursor_grab command without any pre-configured scope.","commands":{"allow":[],"deny":["set_cursor_grab"]}},"deny-set-cursor-icon":{"identifier":"deny-set-cursor-icon","description":"Denies the set_cursor_icon command without any pre-configured scope.","commands":{"allow":[],"deny":["set_cursor_icon"]}},"deny-set-cursor-position":{"identifier":"deny-set-cursor-position","description":"Denies the set_cursor_position command without any pre-configured scope.","commands":{"allow":[],"deny":["set_cursor_position"]}},"deny-set-cursor-visible":{"identifier":"deny-set-cursor-visible","description":"Denies the set_cursor_visible command without any pre-configured scope.","commands":{"allow":[],"deny":["set_cursor_visible"]}},"deny-set-decorations":{"identifier":"deny-set-decorations","description":"Denies the set_decorations command without any pre-configured scope.","commands":{"allow":[],"deny":["set_decorations"]}},"deny-set-effects":{"identifier":"deny-set-effects","description":"Denies the set_effects command without any pre-configured scope.","commands":{"allow":[],"deny":["set_effects"]}},"deny-set-enabled":{"identifier":"deny-set-enabled","description":"Denies the set_enabled command without any pre-configured scope.","commands":{"allow":[],"deny":["set_enabled"]}},"deny-set-focus":{"identifier":"deny-set-focus","description":"Denies the set_focus command without any pre-configured scope.","commands":{"allow":[],"deny":["set_focus"]}},"deny-set-focusable":{"identifier":"deny-set-focusable","description":"Denies the set_focusable command without any pre-configured scope.","commands":{"allow":[],"deny":["set_focusable"]}},"deny-set-fullscreen":{"identifier":"deny-set-fullscreen","description":"Denies the set_fullscreen command without any pre-configured scope.","commands":{"allow":[],"deny":["set_fullscreen"]}},"deny-set-icon":{"identifier":"deny-set-icon","description":"Denies the set_icon command without any pre-configured scope.","commands":{"allow":[],"deny":["set_icon"]}},"deny-set-ignore-cursor-events":{"identifier":"deny-set-ignore-cursor-events","description":"Denies the set_ignore_cursor_events command without any pre-configured scope.","commands":{"allow":[],"deny":["set_ignore_cursor_events"]}},"deny-set-max-size":{"identifier":"deny-set-max-size","description":"Denies the set_max_size command without any pre-configured scope.","commands":{"allow":[],"deny":["set_max_size"]}},"deny-set-maximizable":{"identifier":"deny-set-maximizable","description":"Denies the set_maximizable command without any pre-configured scope.","commands":{"allow":[],"deny":["set_maximizable"]}},"deny-set-min-size":{"identifier":"deny-set-min-size","description":"Denies the set_min_size command without any pre-configured scope.","commands":{"allow":[],"deny":["set_min_size"]}},"deny-set-minimizable":{"identifier":"deny-set-minimizable","description":"Denies the set_minimizable command without any pre-configured scope.","commands":{"allow":[],"deny":["set_minimizable"]}},"deny-set-overlay-icon":{"identifier":"deny-set-overlay-icon","description":"Denies the set_overlay_icon command without any pre-configured scope.","commands":{"allow":[],"deny":["set_overlay_icon"]}},"deny-set-position":{"identifier":"deny-set-position","description":"Denies the set_position command without any pre-configured scope.","commands":{"allow":[],"deny":["set_position"]}},"deny-set-progress-bar":{"identifier":"deny-set-progress-bar","description":"Denies the set_progress_bar command without any pre-configured scope.","commands":{"allow":[],"deny":["set_progress_bar"]}},"deny-set-resizable":{"identifier":"deny-set-resizable","description":"Denies the set_resizable command without any pre-configured scope.","commands":{"allow":[],"deny":["set_resizable"]}},"deny-set-shadow":{"identifier":"deny-set-shadow","description":"Denies the set_shadow command without any pre-configured scope.","commands":{"allow":[],"deny":["set_shadow"]}},"deny-set-simple-fullscreen":{"identifier":"deny-set-simple-fullscreen","description":"Denies the set_simple_fullscreen command without any pre-configured scope.","commands":{"allow":[],"deny":["set_simple_fullscreen"]}},"deny-set-size":{"identifier":"deny-set-size","description":"Denies the set_size command without any pre-configured scope.","commands":{"allow":[],"deny":["set_size"]}},"deny-set-size-constraints":{"identifier":"deny-set-size-constraints","description":"Denies the set_size_constraints command without any pre-configured scope.","commands":{"allow":[],"deny":["set_size_constraints"]}},"deny-set-skip-taskbar":{"identifier":"deny-set-skip-taskbar","description":"Denies the set_skip_taskbar command without any pre-configured scope.","commands":{"allow":[],"deny":["set_skip_taskbar"]}},"deny-set-theme":{"identifier":"deny-set-theme","description":"Denies the set_theme command without any pre-configured scope.","commands":{"allow":[],"deny":["set_theme"]}},"deny-set-title":{"identifier":"deny-set-title","description":"Denies the set_title command without any pre-configured scope.","commands":{"allow":[],"deny":["set_title"]}},"deny-set-title-bar-style":{"identifier":"deny-set-title-bar-style","description":"Denies the set_title_bar_style command without any pre-configured scope.","commands":{"allow":[],"deny":["set_title_bar_style"]}},"deny-set-visible-on-all-workspaces":{"identifier":"deny-set-visible-on-all-workspaces","description":"Denies the set_visible_on_all_workspaces command without any pre-configured scope.","commands":{"allow":[],"deny":["set_visible_on_all_workspaces"]}},"deny-show":{"identifier":"deny-show","description":"Denies the show command without any pre-configured scope.","commands":{"allow":[],"deny":["show"]}},"deny-start-dragging":{"identifier":"deny-start-dragging","description":"Denies the start_dragging command without any pre-configured scope.","commands":{"allow":[],"deny":["start_dragging"]}},"deny-start-resize-dragging":{"identifier":"deny-start-resize-dragging","description":"Denies the start_resize_dragging command without any pre-configured scope.","commands":{"allow":[],"deny":["start_resize_dragging"]}},"deny-theme":{"identifier":"deny-theme","description":"Denies the theme command without any pre-configured scope.","commands":{"allow":[],"deny":["theme"]}},"deny-title":{"identifier":"deny-title","description":"Denies the title command without any pre-configured scope.","commands":{"allow":[],"deny":["title"]}},"deny-toggle-maximize":{"identifier":"deny-toggle-maximize","description":"Denies the toggle_maximize command without any pre-configured scope.","commands":{"allow":[],"deny":["toggle_maximize"]}},"deny-unmaximize":{"identifier":"deny-unmaximize","description":"Denies the unmaximize command without any pre-configured scope.","commands":{"allow":[],"deny":["unmaximize"]}},"deny-unminimize":{"identifier":"deny-unminimize","description":"Denies the unminimize command without any pre-configured scope.","commands":{"allow":[],"deny":["unminimize"]}}},"permission_sets":{},"global_scope_schema":null},"dialog":{"default_permission":{"identifier":"default","description":"This permission set configures the types of dialogs\navailable from the dialog plugin.\n\n#### Granted Permissions\n\nAll dialog types are enabled.\n\n\n","permissions":["allow-message","allow-save","allow-open"]},"permissions":{"allow-ask":{"identifier":"allow-ask","description":"Enables the ask command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `allow-message` and will be removed in v3)","commands":{"allow":["message"],"deny":[]}},"allow-confirm":{"identifier":"allow-confirm","description":"Enables the confirm command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `allow-message` and will be removed in v3)","commands":{"allow":["message"],"deny":[]}},"allow-message":{"identifier":"allow-message","description":"Enables the message command without any pre-configured scope.","commands":{"allow":["message"],"deny":[]}},"allow-open":{"identifier":"allow-open","description":"Enables the open command without any pre-configured scope.","commands":{"allow":["open"],"deny":[]}},"allow-save":{"identifier":"allow-save","description":"Enables the save command without any pre-configured scope.","commands":{"allow":["save"],"deny":[]}},"deny-ask":{"identifier":"deny-ask","description":"Denies the ask command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `deny-message` and will be removed in v3)","commands":{"allow":[],"deny":["message"]}},"deny-confirm":{"identifier":"deny-confirm","description":"Denies the confirm command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `deny-message` and will be removed in v3)","commands":{"allow":[],"deny":["message"]}},"deny-message":{"identifier":"deny-message","description":"Denies the message command without any pre-configured scope.","commands":{"allow":[],"deny":["message"]}},"deny-open":{"identifier":"deny-open","description":"Denies the open command without any pre-configured scope.","commands":{"allow":[],"deny":["open"]}},"deny-save":{"identifier":"deny-save","description":"Denies the save command without any pre-configured scope.","commands":{"allow":[],"deny":["save"]}}},"permission_sets":{},"global_scope_schema":null},"fs":{"default_permission":{"identifier":"default","description":"This set of permissions describes the what kind of\nfile system access the `fs` plugin has enabled or denied by default.\n\n#### Granted Permissions\n\nThis default permission set enables read access to the\napplication specific directories (AppConfig, AppData, AppLocalData, AppCache,\nAppLog) and all files and sub directories created in it.\nThe location of these directories depends on the operating system,\nwhere the application is run.\n\nIn general these directories need to be manually created\nby the application at runtime, before accessing files or folders\nin it is possible.\n\nTherefore, it is also allowed to create all of these folders via\nthe `mkdir` command.\n\n#### Denied Permissions\n\nThis default permission set prevents access to critical components\nof the Tauri application by default.\nOn Windows the webview data folder access is denied.\n","permissions":["create-app-specific-dirs","read-app-specific-dirs-recursive","deny-default"]},"permissions":{"allow-copy-file":{"identifier":"allow-copy-file","description":"Enables the copy_file command without any pre-configured scope.","commands":{"allow":["copy_file"],"deny":[]}},"allow-create":{"identifier":"allow-create","description":"Enables the create command without any pre-configured scope.","commands":{"allow":["create"],"deny":[]}},"allow-exists":{"identifier":"allow-exists","description":"Enables the exists command without any pre-configured scope.","commands":{"allow":["exists"],"deny":[]}},"allow-fstat":{"identifier":"allow-fstat","description":"Enables the fstat command without any pre-configured scope.","commands":{"allow":["fstat"],"deny":[]}},"allow-ftruncate":{"identifier":"allow-ftruncate","description":"Enables the ftruncate command without any pre-configured scope.","commands":{"allow":["ftruncate"],"deny":[]}},"allow-lstat":{"identifier":"allow-lstat","description":"Enables the lstat command without any pre-configured scope.","commands":{"allow":["lstat"],"deny":[]}},"allow-mkdir":{"identifier":"allow-mkdir","description":"Enables the mkdir command without any pre-configured scope.","commands":{"allow":["mkdir"],"deny":[]}},"allow-open":{"identifier":"allow-open","description":"Enables the open command without any pre-configured scope.","commands":{"allow":["open"],"deny":[]}},"allow-read":{"identifier":"allow-read","description":"Enables the read command without any pre-configured scope.","commands":{"allow":["read"],"deny":[]}},"allow-read-dir":{"identifier":"allow-read-dir","description":"Enables the read_dir command without any pre-configured scope.","commands":{"allow":["read_dir"],"deny":[]}},"allow-read-file":{"identifier":"allow-read-file","description":"Enables the read_file command without any pre-configured scope.","commands":{"allow":["read_file"],"deny":[]}},"allow-read-text-file":{"identifier":"allow-read-text-file","description":"Enables the read_text_file command without any pre-configured scope.","commands":{"allow":["read_text_file"],"deny":[]}},"allow-read-text-file-lines":{"identifier":"allow-read-text-file-lines","description":"Enables the read_text_file_lines command without any pre-configured scope.","commands":{"allow":["read_text_file_lines","read_text_file_lines_next"],"deny":[]}},"allow-read-text-file-lines-next":{"identifier":"allow-read-text-file-lines-next","description":"Enables the read_text_file_lines_next command without any pre-configured scope.","commands":{"allow":["read_text_file_lines_next"],"deny":[]}},"allow-remove":{"identifier":"allow-remove","description":"Enables the remove command without any pre-configured scope.","commands":{"allow":["remove"],"deny":[]}},"allow-rename":{"identifier":"allow-rename","description":"Enables the rename command without any pre-configured scope.","commands":{"allow":["rename"],"deny":[]}},"allow-seek":{"identifier":"allow-seek","description":"Enables the seek command without any pre-configured scope.","commands":{"allow":["seek"],"deny":[]}},"allow-size":{"identifier":"allow-size","description":"Enables the size command without any pre-configured scope.","commands":{"allow":["size"],"deny":[]}},"allow-start-accessing-security-scoped-resource":{"identifier":"allow-start-accessing-security-scoped-resource","description":"Enables the start_accessing_security_scoped_resource command without any pre-configured scope.","commands":{"allow":["start_accessing_security_scoped_resource"],"deny":[]}},"allow-stat":{"identifier":"allow-stat","description":"Enables the stat command without any pre-configured scope.","commands":{"allow":["stat"],"deny":[]}},"allow-stop-accessing-security-scoped-resource":{"identifier":"allow-stop-accessing-security-scoped-resource","description":"Enables the stop_accessing_security_scoped_resource command without any pre-configured scope.","commands":{"allow":["stop_accessing_security_scoped_resource"],"deny":[]}},"allow-truncate":{"identifier":"allow-truncate","description":"Enables the truncate command without any pre-configured scope.","commands":{"allow":["truncate"],"deny":[]}},"allow-unwatch":{"identifier":"allow-unwatch","description":"Enables the unwatch command without any pre-configured scope.","commands":{"allow":["unwatch"],"deny":[]}},"allow-watch":{"identifier":"allow-watch","description":"Enables the watch command without any pre-configured scope.","commands":{"allow":["watch"],"deny":[]}},"allow-write":{"identifier":"allow-write","description":"Enables the write command without any pre-configured scope.","commands":{"allow":["write"],"deny":[]}},"allow-write-file":{"identifier":"allow-write-file","description":"Enables the write_file command without any pre-configured scope.","commands":{"allow":["write_file","open","write"],"deny":[]}},"allow-write-text-file":{"identifier":"allow-write-text-file","description":"Enables the write_text_file command without any pre-configured scope.","commands":{"allow":["write_text_file"],"deny":[]}},"create-app-specific-dirs":{"identifier":"create-app-specific-dirs","description":"This permissions allows to create the application specific directories.\n","commands":{"allow":["mkdir","scope-app-index"],"deny":[]}},"deny-copy-file":{"identifier":"deny-copy-file","description":"Denies the copy_file command without any pre-configured scope.","commands":{"allow":[],"deny":["copy_file"]}},"deny-create":{"identifier":"deny-create","description":"Denies the create command without any pre-configured scope.","commands":{"allow":[],"deny":["create"]}},"deny-exists":{"identifier":"deny-exists","description":"Denies the exists command without any pre-configured scope.","commands":{"allow":[],"deny":["exists"]}},"deny-fstat":{"identifier":"deny-fstat","description":"Denies the fstat command without any pre-configured scope.","commands":{"allow":[],"deny":["fstat"]}},"deny-ftruncate":{"identifier":"deny-ftruncate","description":"Denies the ftruncate command without any pre-configured scope.","commands":{"allow":[],"deny":["ftruncate"]}},"deny-lstat":{"identifier":"deny-lstat","description":"Denies the lstat command without any pre-configured scope.","commands":{"allow":[],"deny":["lstat"]}},"deny-mkdir":{"identifier":"deny-mkdir","description":"Denies the mkdir command without any pre-configured scope.","commands":{"allow":[],"deny":["mkdir"]}},"deny-open":{"identifier":"deny-open","description":"Denies the open command without any pre-configured scope.","commands":{"allow":[],"deny":["open"]}},"deny-read":{"identifier":"deny-read","description":"Denies the read command without any pre-configured scope.","commands":{"allow":[],"deny":["read"]}},"deny-read-dir":{"identifier":"deny-read-dir","description":"Denies the read_dir command without any pre-configured scope.","commands":{"allow":[],"deny":["read_dir"]}},"deny-read-file":{"identifier":"deny-read-file","description":"Denies the read_file command without any pre-configured scope.","commands":{"allow":[],"deny":["read_file"]}},"deny-read-text-file":{"identifier":"deny-read-text-file","description":"Denies the read_text_file command without any pre-configured scope.","commands":{"allow":[],"deny":["read_text_file"]}},"deny-read-text-file-lines":{"identifier":"deny-read-text-file-lines","description":"Denies the read_text_file_lines command without any pre-configured scope.","commands":{"allow":[],"deny":["read_text_file_lines"]}},"deny-read-text-file-lines-next":{"identifier":"deny-read-text-file-lines-next","description":"Denies the read_text_file_lines_next command without any pre-configured scope.","commands":{"allow":[],"deny":["read_text_file_lines_next"]}},"deny-remove":{"identifier":"deny-remove","description":"Denies the remove command without any pre-configured scope.","commands":{"allow":[],"deny":["remove"]}},"deny-rename":{"identifier":"deny-rename","description":"Denies the rename command without any pre-configured scope.","commands":{"allow":[],"deny":["rename"]}},"deny-seek":{"identifier":"deny-seek","description":"Denies the seek command without any pre-configured scope.","commands":{"allow":[],"deny":["seek"]}},"deny-size":{"identifier":"deny-size","description":"Denies the size command without any pre-configured scope.","commands":{"allow":[],"deny":["size"]}},"deny-start-accessing-security-scoped-resource":{"identifier":"deny-start-accessing-security-scoped-resource","description":"Denies the start_accessing_security_scoped_resource command without any pre-configured scope.","commands":{"allow":[],"deny":["start_accessing_security_scoped_resource"]}},"deny-stat":{"identifier":"deny-stat","description":"Denies the stat command without any pre-configured scope.","commands":{"allow":[],"deny":["stat"]}},"deny-stop-accessing-security-scoped-resource":{"identifier":"deny-stop-accessing-security-scoped-resource","description":"Denies the stop_accessing_security_scoped_resource command without any pre-configured scope.","commands":{"allow":[],"deny":["stop_accessing_security_scoped_resource"]}},"deny-truncate":{"identifier":"deny-truncate","description":"Denies the truncate command without any pre-configured scope.","commands":{"allow":[],"deny":["truncate"]}},"deny-unwatch":{"identifier":"deny-unwatch","description":"Denies the unwatch command without any pre-configured scope.","commands":{"allow":[],"deny":["unwatch"]}},"deny-watch":{"identifier":"deny-watch","description":"Denies the watch command without any pre-configured scope.","commands":{"allow":[],"deny":["watch"]}},"deny-webview-data-linux":{"identifier":"deny-webview-data-linux","description":"This denies read access to the\n`$APPLOCALDATA` folder on linux as the webview data and configuration values are stored here.\nAllowing access can lead to sensitive information disclosure and should be well considered.","commands":{"allow":[],"deny":[]}},"deny-webview-data-windows":{"identifier":"deny-webview-data-windows","description":"This denies read access to the\n`$APPLOCALDATA/EBWebView` folder on windows as the webview data and configuration values are stored here.\nAllowing access can lead to sensitive information disclosure and should be well considered.","commands":{"allow":[],"deny":[]}},"deny-write":{"identifier":"deny-write","description":"Denies the write command without any pre-configured scope.","commands":{"allow":[],"deny":["write"]}},"deny-write-file":{"identifier":"deny-write-file","description":"Denies the write_file command without any pre-configured scope.","commands":{"allow":[],"deny":["write_file"]}},"deny-write-text-file":{"identifier":"deny-write-text-file","description":"Denies the write_text_file command without any pre-configured scope.","commands":{"allow":[],"deny":["write_text_file"]}},"read-all":{"identifier":"read-all","description":"This enables all read related commands without any pre-configured accessible paths.","commands":{"allow":["read_dir","read_file","read","open","read_text_file","read_text_file_lines","read_text_file_lines_next","seek","stat","lstat","fstat","exists","watch","unwatch"],"deny":[]}},"read-app-specific-dirs-recursive":{"identifier":"read-app-specific-dirs-recursive","description":"This permission allows recursive read functionality on the application\nspecific base directories. \n","commands":{"allow":["read_dir","read_file","read_text_file","read_text_file_lines","read_text_file_lines_next","exists","scope-app-recursive"],"deny":[]}},"read-dirs":{"identifier":"read-dirs","description":"This enables directory read and file metadata related commands without any pre-configured accessible paths.","commands":{"allow":["read_dir","stat","lstat","fstat","exists"],"deny":[]}},"read-files":{"identifier":"read-files","description":"This enables file read related commands without any pre-configured accessible paths.","commands":{"allow":["read_file","read","open","read_text_file","read_text_file_lines","read_text_file_lines_next","seek","stat","lstat","fstat","exists"],"deny":[]}},"read-meta":{"identifier":"read-meta","description":"This enables all index or metadata related commands without any pre-configured accessible paths.","commands":{"allow":["read_dir","stat","lstat","fstat","exists","size"],"deny":[]}},"scope":{"identifier":"scope","description":"An empty permission you can use to modify the global scope.\n\n## Example\n\n```json\n{\n \"identifier\": \"read-documents\",\n \"windows\": [\"main\"],\n \"permissions\": [\n \"fs:allow-read\",\n {\n \"identifier\": \"fs:scope\",\n \"allow\": [\n \"$APPDATA/documents/**/*\"\n ],\n \"deny\": [\n \"$APPDATA/documents/secret.txt\"\n ]\n }\n ]\n}\n```\n","commands":{"allow":[],"deny":[]}},"scope-app":{"identifier":"scope-app","description":"This scope permits access to all files and list content of top level directories in the application folders.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$APPCONFIG"},{"path":"$APPCONFIG/*"},{"path":"$APPDATA"},{"path":"$APPDATA/*"},{"path":"$APPLOCALDATA"},{"path":"$APPLOCALDATA/*"},{"path":"$APPCACHE"},{"path":"$APPCACHE/*"},{"path":"$APPLOG"},{"path":"$APPLOG/*"}]}},"scope-app-index":{"identifier":"scope-app-index","description":"This scope permits to list all files and folders in the application directories.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$APPCONFIG"},{"path":"$APPDATA"},{"path":"$APPLOCALDATA"},{"path":"$APPCACHE"},{"path":"$APPLOG"}]}},"scope-app-recursive":{"identifier":"scope-app-recursive","description":"This scope permits recursive access to the complete application folders, including sub directories and files.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$APPCONFIG"},{"path":"$APPCONFIG/**"},{"path":"$APPDATA"},{"path":"$APPDATA/**"},{"path":"$APPLOCALDATA"},{"path":"$APPLOCALDATA/**"},{"path":"$APPCACHE"},{"path":"$APPCACHE/**"},{"path":"$APPLOG"},{"path":"$APPLOG/**"}]}},"scope-appcache":{"identifier":"scope-appcache","description":"This scope permits access to all files and list content of top level directories in the `$APPCACHE` folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$APPCACHE"},{"path":"$APPCACHE/*"}]}},"scope-appcache-index":{"identifier":"scope-appcache-index","description":"This scope permits to list all files and folders in the `$APPCACHE`folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$APPCACHE"}]}},"scope-appcache-recursive":{"identifier":"scope-appcache-recursive","description":"This scope permits recursive access to the complete `$APPCACHE` folder, including sub directories and files.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$APPCACHE"},{"path":"$APPCACHE/**"}]}},"scope-appconfig":{"identifier":"scope-appconfig","description":"This scope permits access to all files and list content of top level directories in the `$APPCONFIG` folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$APPCONFIG"},{"path":"$APPCONFIG/*"}]}},"scope-appconfig-index":{"identifier":"scope-appconfig-index","description":"This scope permits to list all files and folders in the `$APPCONFIG`folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$APPCONFIG"}]}},"scope-appconfig-recursive":{"identifier":"scope-appconfig-recursive","description":"This scope permits recursive access to the complete `$APPCONFIG` folder, including sub directories and files.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$APPCONFIG"},{"path":"$APPCONFIG/**"}]}},"scope-appdata":{"identifier":"scope-appdata","description":"This scope permits access to all files and list content of top level directories in the `$APPDATA` folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$APPDATA"},{"path":"$APPDATA/*"}]}},"scope-appdata-index":{"identifier":"scope-appdata-index","description":"This scope permits to list all files and folders in the `$APPDATA`folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$APPDATA"}]}},"scope-appdata-recursive":{"identifier":"scope-appdata-recursive","description":"This scope permits recursive access to the complete `$APPDATA` folder, including sub directories and files.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$APPDATA"},{"path":"$APPDATA/**"}]}},"scope-applocaldata":{"identifier":"scope-applocaldata","description":"This scope permits access to all files and list content of top level directories in the `$APPLOCALDATA` folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$APPLOCALDATA"},{"path":"$APPLOCALDATA/*"}]}},"scope-applocaldata-index":{"identifier":"scope-applocaldata-index","description":"This scope permits to list all files and folders in the `$APPLOCALDATA`folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$APPLOCALDATA"}]}},"scope-applocaldata-recursive":{"identifier":"scope-applocaldata-recursive","description":"This scope permits recursive access to the complete `$APPLOCALDATA` folder, including sub directories and files.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$APPLOCALDATA"},{"path":"$APPLOCALDATA/**"}]}},"scope-applog":{"identifier":"scope-applog","description":"This scope permits access to all files and list content of top level directories in the `$APPLOG` folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$APPLOG"},{"path":"$APPLOG/*"}]}},"scope-applog-index":{"identifier":"scope-applog-index","description":"This scope permits to list all files and folders in the `$APPLOG`folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$APPLOG"}]}},"scope-applog-recursive":{"identifier":"scope-applog-recursive","description":"This scope permits recursive access to the complete `$APPLOG` folder, including sub directories and files.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$APPLOG"},{"path":"$APPLOG/**"}]}},"scope-audio":{"identifier":"scope-audio","description":"This scope permits access to all files and list content of top level directories in the `$AUDIO` folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$AUDIO"},{"path":"$AUDIO/*"}]}},"scope-audio-index":{"identifier":"scope-audio-index","description":"This scope permits to list all files and folders in the `$AUDIO`folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$AUDIO"}]}},"scope-audio-recursive":{"identifier":"scope-audio-recursive","description":"This scope permits recursive access to the complete `$AUDIO` folder, including sub directories and files.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$AUDIO"},{"path":"$AUDIO/**"}]}},"scope-cache":{"identifier":"scope-cache","description":"This scope permits access to all files and list content of top level directories in the `$CACHE` folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$CACHE"},{"path":"$CACHE/*"}]}},"scope-cache-index":{"identifier":"scope-cache-index","description":"This scope permits to list all files and folders in the `$CACHE`folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$CACHE"}]}},"scope-cache-recursive":{"identifier":"scope-cache-recursive","description":"This scope permits recursive access to the complete `$CACHE` folder, including sub directories and files.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$CACHE"},{"path":"$CACHE/**"}]}},"scope-config":{"identifier":"scope-config","description":"This scope permits access to all files and list content of top level directories in the `$CONFIG` folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$CONFIG"},{"path":"$CONFIG/*"}]}},"scope-config-index":{"identifier":"scope-config-index","description":"This scope permits to list all files and folders in the `$CONFIG`folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$CONFIG"}]}},"scope-config-recursive":{"identifier":"scope-config-recursive","description":"This scope permits recursive access to the complete `$CONFIG` folder, including sub directories and files.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$CONFIG"},{"path":"$CONFIG/**"}]}},"scope-data":{"identifier":"scope-data","description":"This scope permits access to all files and list content of top level directories in the `$DATA` folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$DATA"},{"path":"$DATA/*"}]}},"scope-data-index":{"identifier":"scope-data-index","description":"This scope permits to list all files and folders in the `$DATA`folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$DATA"}]}},"scope-data-recursive":{"identifier":"scope-data-recursive","description":"This scope permits recursive access to the complete `$DATA` folder, including sub directories and files.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$DATA"},{"path":"$DATA/**"}]}},"scope-desktop":{"identifier":"scope-desktop","description":"This scope permits access to all files and list content of top level directories in the `$DESKTOP` folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$DESKTOP"},{"path":"$DESKTOP/*"}]}},"scope-desktop-index":{"identifier":"scope-desktop-index","description":"This scope permits to list all files and folders in the `$DESKTOP`folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$DESKTOP"}]}},"scope-desktop-recursive":{"identifier":"scope-desktop-recursive","description":"This scope permits recursive access to the complete `$DESKTOP` folder, including sub directories and files.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$DESKTOP"},{"path":"$DESKTOP/**"}]}},"scope-document":{"identifier":"scope-document","description":"This scope permits access to all files and list content of top level directories in the `$DOCUMENT` folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$DOCUMENT"},{"path":"$DOCUMENT/*"}]}},"scope-document-index":{"identifier":"scope-document-index","description":"This scope permits to list all files and folders in the `$DOCUMENT`folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$DOCUMENT"}]}},"scope-document-recursive":{"identifier":"scope-document-recursive","description":"This scope permits recursive access to the complete `$DOCUMENT` folder, including sub directories and files.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$DOCUMENT"},{"path":"$DOCUMENT/**"}]}},"scope-download":{"identifier":"scope-download","description":"This scope permits access to all files and list content of top level directories in the `$DOWNLOAD` folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$DOWNLOAD"},{"path":"$DOWNLOAD/*"}]}},"scope-download-index":{"identifier":"scope-download-index","description":"This scope permits to list all files and folders in the `$DOWNLOAD`folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$DOWNLOAD"}]}},"scope-download-recursive":{"identifier":"scope-download-recursive","description":"This scope permits recursive access to the complete `$DOWNLOAD` folder, including sub directories and files.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$DOWNLOAD"},{"path":"$DOWNLOAD/**"}]}},"scope-exe":{"identifier":"scope-exe","description":"This scope permits access to all files and list content of top level directories in the `$EXE` folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$EXE"},{"path":"$EXE/*"}]}},"scope-exe-index":{"identifier":"scope-exe-index","description":"This scope permits to list all files and folders in the `$EXE`folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$EXE"}]}},"scope-exe-recursive":{"identifier":"scope-exe-recursive","description":"This scope permits recursive access to the complete `$EXE` folder, including sub directories and files.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$EXE"},{"path":"$EXE/**"}]}},"scope-font":{"identifier":"scope-font","description":"This scope permits access to all files and list content of top level directories in the `$FONT` folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$FONT"},{"path":"$FONT/*"}]}},"scope-font-index":{"identifier":"scope-font-index","description":"This scope permits to list all files and folders in the `$FONT`folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$FONT"}]}},"scope-font-recursive":{"identifier":"scope-font-recursive","description":"This scope permits recursive access to the complete `$FONT` folder, including sub directories and files.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$FONT"},{"path":"$FONT/**"}]}},"scope-home":{"identifier":"scope-home","description":"This scope permits access to all files and list content of top level directories in the `$HOME` folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$HOME"},{"path":"$HOME/*"}]}},"scope-home-index":{"identifier":"scope-home-index","description":"This scope permits to list all files and folders in the `$HOME`folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$HOME"}]}},"scope-home-recursive":{"identifier":"scope-home-recursive","description":"This scope permits recursive access to the complete `$HOME` folder, including sub directories and files.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$HOME"},{"path":"$HOME/**"}]}},"scope-localdata":{"identifier":"scope-localdata","description":"This scope permits access to all files and list content of top level directories in the `$LOCALDATA` folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$LOCALDATA"},{"path":"$LOCALDATA/*"}]}},"scope-localdata-index":{"identifier":"scope-localdata-index","description":"This scope permits to list all files and folders in the `$LOCALDATA`folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$LOCALDATA"}]}},"scope-localdata-recursive":{"identifier":"scope-localdata-recursive","description":"This scope permits recursive access to the complete `$LOCALDATA` folder, including sub directories and files.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$LOCALDATA"},{"path":"$LOCALDATA/**"}]}},"scope-log":{"identifier":"scope-log","description":"This scope permits access to all files and list content of top level directories in the `$LOG` folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$LOG"},{"path":"$LOG/*"}]}},"scope-log-index":{"identifier":"scope-log-index","description":"This scope permits to list all files and folders in the `$LOG`folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$LOG"}]}},"scope-log-recursive":{"identifier":"scope-log-recursive","description":"This scope permits recursive access to the complete `$LOG` folder, including sub directories and files.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$LOG"},{"path":"$LOG/**"}]}},"scope-picture":{"identifier":"scope-picture","description":"This scope permits access to all files and list content of top level directories in the `$PICTURE` folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$PICTURE"},{"path":"$PICTURE/*"}]}},"scope-picture-index":{"identifier":"scope-picture-index","description":"This scope permits to list all files and folders in the `$PICTURE`folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$PICTURE"}]}},"scope-picture-recursive":{"identifier":"scope-picture-recursive","description":"This scope permits recursive access to the complete `$PICTURE` folder, including sub directories and files.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$PICTURE"},{"path":"$PICTURE/**"}]}},"scope-public":{"identifier":"scope-public","description":"This scope permits access to all files and list content of top level directories in the `$PUBLIC` folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$PUBLIC"},{"path":"$PUBLIC/*"}]}},"scope-public-index":{"identifier":"scope-public-index","description":"This scope permits to list all files and folders in the `$PUBLIC`folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$PUBLIC"}]}},"scope-public-recursive":{"identifier":"scope-public-recursive","description":"This scope permits recursive access to the complete `$PUBLIC` folder, including sub directories and files.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$PUBLIC"},{"path":"$PUBLIC/**"}]}},"scope-resource":{"identifier":"scope-resource","description":"This scope permits access to all files and list content of top level directories in the `$RESOURCE` folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$RESOURCE"},{"path":"$RESOURCE/*"}]}},"scope-resource-index":{"identifier":"scope-resource-index","description":"This scope permits to list all files and folders in the `$RESOURCE`folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$RESOURCE"}]}},"scope-resource-recursive":{"identifier":"scope-resource-recursive","description":"This scope permits recursive access to the complete `$RESOURCE` folder, including sub directories and files.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$RESOURCE"},{"path":"$RESOURCE/**"}]}},"scope-runtime":{"identifier":"scope-runtime","description":"This scope permits access to all files and list content of top level directories in the `$RUNTIME` folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$RUNTIME"},{"path":"$RUNTIME/*"}]}},"scope-runtime-index":{"identifier":"scope-runtime-index","description":"This scope permits to list all files and folders in the `$RUNTIME`folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$RUNTIME"}]}},"scope-runtime-recursive":{"identifier":"scope-runtime-recursive","description":"This scope permits recursive access to the complete `$RUNTIME` folder, including sub directories and files.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$RUNTIME"},{"path":"$RUNTIME/**"}]}},"scope-temp":{"identifier":"scope-temp","description":"This scope permits access to all files and list content of top level directories in the `$TEMP` folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$TEMP"},{"path":"$TEMP/*"}]}},"scope-temp-index":{"identifier":"scope-temp-index","description":"This scope permits to list all files and folders in the `$TEMP`folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$TEMP"}]}},"scope-temp-recursive":{"identifier":"scope-temp-recursive","description":"This scope permits recursive access to the complete `$TEMP` folder, including sub directories and files.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$TEMP"},{"path":"$TEMP/**"}]}},"scope-template":{"identifier":"scope-template","description":"This scope permits access to all files and list content of top level directories in the `$TEMPLATE` folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$TEMPLATE"},{"path":"$TEMPLATE/*"}]}},"scope-template-index":{"identifier":"scope-template-index","description":"This scope permits to list all files and folders in the `$TEMPLATE`folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$TEMPLATE"}]}},"scope-template-recursive":{"identifier":"scope-template-recursive","description":"This scope permits recursive access to the complete `$TEMPLATE` folder, including sub directories and files.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$TEMPLATE"},{"path":"$TEMPLATE/**"}]}},"scope-video":{"identifier":"scope-video","description":"This scope permits access to all files and list content of top level directories in the `$VIDEO` folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$VIDEO"},{"path":"$VIDEO/*"}]}},"scope-video-index":{"identifier":"scope-video-index","description":"This scope permits to list all files and folders in the `$VIDEO`folder.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$VIDEO"}]}},"scope-video-recursive":{"identifier":"scope-video-recursive","description":"This scope permits recursive access to the complete `$VIDEO` folder, including sub directories and files.","commands":{"allow":[],"deny":[]},"scope":{"allow":[{"path":"$VIDEO"},{"path":"$VIDEO/**"}]}},"write-all":{"identifier":"write-all","description":"This enables all write related commands without any pre-configured accessible paths.","commands":{"allow":["mkdir","create","copy_file","remove","rename","truncate","ftruncate","write","write_file","write_text_file"],"deny":[]}},"write-files":{"identifier":"write-files","description":"This enables all file write related commands without any pre-configured accessible paths.","commands":{"allow":["create","copy_file","remove","rename","truncate","ftruncate","write","write_file","write_text_file"],"deny":[]}}},"permission_sets":{"allow-app-meta":{"identifier":"allow-app-meta","description":"This allows non-recursive read access to metadata of the application folders, including file listing and statistics.","permissions":["read-meta","scope-app-index"]},"allow-app-meta-recursive":{"identifier":"allow-app-meta-recursive","description":"This allows full recursive read access to metadata of the application folders, including file listing and statistics.","permissions":["read-meta","scope-app-recursive"]},"allow-app-read":{"identifier":"allow-app-read","description":"This allows non-recursive read access to the application folders.","permissions":["read-all","scope-app"]},"allow-app-read-recursive":{"identifier":"allow-app-read-recursive","description":"This allows full recursive read access to the complete application folders, files and subdirectories.","permissions":["read-all","scope-app-recursive"]},"allow-app-write":{"identifier":"allow-app-write","description":"This allows non-recursive write access to the application folders.","permissions":["write-all","scope-app"]},"allow-app-write-recursive":{"identifier":"allow-app-write-recursive","description":"This allows full recursive write access to the complete application folders, files and subdirectories.","permissions":["write-all","scope-app-recursive"]},"allow-appcache-meta":{"identifier":"allow-appcache-meta","description":"This allows non-recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.","permissions":["read-meta","scope-appcache-index"]},"allow-appcache-meta-recursive":{"identifier":"allow-appcache-meta-recursive","description":"This allows full recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.","permissions":["read-meta","scope-appcache-recursive"]},"allow-appcache-read":{"identifier":"allow-appcache-read","description":"This allows non-recursive read access to the `$APPCACHE` folder.","permissions":["read-all","scope-appcache"]},"allow-appcache-read-recursive":{"identifier":"allow-appcache-read-recursive","description":"This allows full recursive read access to the complete `$APPCACHE` folder, files and subdirectories.","permissions":["read-all","scope-appcache-recursive"]},"allow-appcache-write":{"identifier":"allow-appcache-write","description":"This allows non-recursive write access to the `$APPCACHE` folder.","permissions":["write-all","scope-appcache"]},"allow-appcache-write-recursive":{"identifier":"allow-appcache-write-recursive","description":"This allows full recursive write access to the complete `$APPCACHE` folder, files and subdirectories.","permissions":["write-all","scope-appcache-recursive"]},"allow-appconfig-meta":{"identifier":"allow-appconfig-meta","description":"This allows non-recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.","permissions":["read-meta","scope-appconfig-index"]},"allow-appconfig-meta-recursive":{"identifier":"allow-appconfig-meta-recursive","description":"This allows full recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.","permissions":["read-meta","scope-appconfig-recursive"]},"allow-appconfig-read":{"identifier":"allow-appconfig-read","description":"This allows non-recursive read access to the `$APPCONFIG` folder.","permissions":["read-all","scope-appconfig"]},"allow-appconfig-read-recursive":{"identifier":"allow-appconfig-read-recursive","description":"This allows full recursive read access to the complete `$APPCONFIG` folder, files and subdirectories.","permissions":["read-all","scope-appconfig-recursive"]},"allow-appconfig-write":{"identifier":"allow-appconfig-write","description":"This allows non-recursive write access to the `$APPCONFIG` folder.","permissions":["write-all","scope-appconfig"]},"allow-appconfig-write-recursive":{"identifier":"allow-appconfig-write-recursive","description":"This allows full recursive write access to the complete `$APPCONFIG` folder, files and subdirectories.","permissions":["write-all","scope-appconfig-recursive"]},"allow-appdata-meta":{"identifier":"allow-appdata-meta","description":"This allows non-recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.","permissions":["read-meta","scope-appdata-index"]},"allow-appdata-meta-recursive":{"identifier":"allow-appdata-meta-recursive","description":"This allows full recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.","permissions":["read-meta","scope-appdata-recursive"]},"allow-appdata-read":{"identifier":"allow-appdata-read","description":"This allows non-recursive read access to the `$APPDATA` folder.","permissions":["read-all","scope-appdata"]},"allow-appdata-read-recursive":{"identifier":"allow-appdata-read-recursive","description":"This allows full recursive read access to the complete `$APPDATA` folder, files and subdirectories.","permissions":["read-all","scope-appdata-recursive"]},"allow-appdata-write":{"identifier":"allow-appdata-write","description":"This allows non-recursive write access to the `$APPDATA` folder.","permissions":["write-all","scope-appdata"]},"allow-appdata-write-recursive":{"identifier":"allow-appdata-write-recursive","description":"This allows full recursive write access to the complete `$APPDATA` folder, files and subdirectories.","permissions":["write-all","scope-appdata-recursive"]},"allow-applocaldata-meta":{"identifier":"allow-applocaldata-meta","description":"This allows non-recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.","permissions":["read-meta","scope-applocaldata-index"]},"allow-applocaldata-meta-recursive":{"identifier":"allow-applocaldata-meta-recursive","description":"This allows full recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.","permissions":["read-meta","scope-applocaldata-recursive"]},"allow-applocaldata-read":{"identifier":"allow-applocaldata-read","description":"This allows non-recursive read access to the `$APPLOCALDATA` folder.","permissions":["read-all","scope-applocaldata"]},"allow-applocaldata-read-recursive":{"identifier":"allow-applocaldata-read-recursive","description":"This allows full recursive read access to the complete `$APPLOCALDATA` folder, files and subdirectories.","permissions":["read-all","scope-applocaldata-recursive"]},"allow-applocaldata-write":{"identifier":"allow-applocaldata-write","description":"This allows non-recursive write access to the `$APPLOCALDATA` folder.","permissions":["write-all","scope-applocaldata"]},"allow-applocaldata-write-recursive":{"identifier":"allow-applocaldata-write-recursive","description":"This allows full recursive write access to the complete `$APPLOCALDATA` folder, files and subdirectories.","permissions":["write-all","scope-applocaldata-recursive"]},"allow-applog-meta":{"identifier":"allow-applog-meta","description":"This allows non-recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.","permissions":["read-meta","scope-applog-index"]},"allow-applog-meta-recursive":{"identifier":"allow-applog-meta-recursive","description":"This allows full recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.","permissions":["read-meta","scope-applog-recursive"]},"allow-applog-read":{"identifier":"allow-applog-read","description":"This allows non-recursive read access to the `$APPLOG` folder.","permissions":["read-all","scope-applog"]},"allow-applog-read-recursive":{"identifier":"allow-applog-read-recursive","description":"This allows full recursive read access to the complete `$APPLOG` folder, files and subdirectories.","permissions":["read-all","scope-applog-recursive"]},"allow-applog-write":{"identifier":"allow-applog-write","description":"This allows non-recursive write access to the `$APPLOG` folder.","permissions":["write-all","scope-applog"]},"allow-applog-write-recursive":{"identifier":"allow-applog-write-recursive","description":"This allows full recursive write access to the complete `$APPLOG` folder, files and subdirectories.","permissions":["write-all","scope-applog-recursive"]},"allow-audio-meta":{"identifier":"allow-audio-meta","description":"This allows non-recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.","permissions":["read-meta","scope-audio-index"]},"allow-audio-meta-recursive":{"identifier":"allow-audio-meta-recursive","description":"This allows full recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.","permissions":["read-meta","scope-audio-recursive"]},"allow-audio-read":{"identifier":"allow-audio-read","description":"This allows non-recursive read access to the `$AUDIO` folder.","permissions":["read-all","scope-audio"]},"allow-audio-read-recursive":{"identifier":"allow-audio-read-recursive","description":"This allows full recursive read access to the complete `$AUDIO` folder, files and subdirectories.","permissions":["read-all","scope-audio-recursive"]},"allow-audio-write":{"identifier":"allow-audio-write","description":"This allows non-recursive write access to the `$AUDIO` folder.","permissions":["write-all","scope-audio"]},"allow-audio-write-recursive":{"identifier":"allow-audio-write-recursive","description":"This allows full recursive write access to the complete `$AUDIO` folder, files and subdirectories.","permissions":["write-all","scope-audio-recursive"]},"allow-cache-meta":{"identifier":"allow-cache-meta","description":"This allows non-recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.","permissions":["read-meta","scope-cache-index"]},"allow-cache-meta-recursive":{"identifier":"allow-cache-meta-recursive","description":"This allows full recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.","permissions":["read-meta","scope-cache-recursive"]},"allow-cache-read":{"identifier":"allow-cache-read","description":"This allows non-recursive read access to the `$CACHE` folder.","permissions":["read-all","scope-cache"]},"allow-cache-read-recursive":{"identifier":"allow-cache-read-recursive","description":"This allows full recursive read access to the complete `$CACHE` folder, files and subdirectories.","permissions":["read-all","scope-cache-recursive"]},"allow-cache-write":{"identifier":"allow-cache-write","description":"This allows non-recursive write access to the `$CACHE` folder.","permissions":["write-all","scope-cache"]},"allow-cache-write-recursive":{"identifier":"allow-cache-write-recursive","description":"This allows full recursive write access to the complete `$CACHE` folder, files and subdirectories.","permissions":["write-all","scope-cache-recursive"]},"allow-config-meta":{"identifier":"allow-config-meta","description":"This allows non-recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.","permissions":["read-meta","scope-config-index"]},"allow-config-meta-recursive":{"identifier":"allow-config-meta-recursive","description":"This allows full recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.","permissions":["read-meta","scope-config-recursive"]},"allow-config-read":{"identifier":"allow-config-read","description":"This allows non-recursive read access to the `$CONFIG` folder.","permissions":["read-all","scope-config"]},"allow-config-read-recursive":{"identifier":"allow-config-read-recursive","description":"This allows full recursive read access to the complete `$CONFIG` folder, files and subdirectories.","permissions":["read-all","scope-config-recursive"]},"allow-config-write":{"identifier":"allow-config-write","description":"This allows non-recursive write access to the `$CONFIG` folder.","permissions":["write-all","scope-config"]},"allow-config-write-recursive":{"identifier":"allow-config-write-recursive","description":"This allows full recursive write access to the complete `$CONFIG` folder, files and subdirectories.","permissions":["write-all","scope-config-recursive"]},"allow-data-meta":{"identifier":"allow-data-meta","description":"This allows non-recursive read access to metadata of the `$DATA` folder, including file listing and statistics.","permissions":["read-meta","scope-data-index"]},"allow-data-meta-recursive":{"identifier":"allow-data-meta-recursive","description":"This allows full recursive read access to metadata of the `$DATA` folder, including file listing and statistics.","permissions":["read-meta","scope-data-recursive"]},"allow-data-read":{"identifier":"allow-data-read","description":"This allows non-recursive read access to the `$DATA` folder.","permissions":["read-all","scope-data"]},"allow-data-read-recursive":{"identifier":"allow-data-read-recursive","description":"This allows full recursive read access to the complete `$DATA` folder, files and subdirectories.","permissions":["read-all","scope-data-recursive"]},"allow-data-write":{"identifier":"allow-data-write","description":"This allows non-recursive write access to the `$DATA` folder.","permissions":["write-all","scope-data"]},"allow-data-write-recursive":{"identifier":"allow-data-write-recursive","description":"This allows full recursive write access to the complete `$DATA` folder, files and subdirectories.","permissions":["write-all","scope-data-recursive"]},"allow-desktop-meta":{"identifier":"allow-desktop-meta","description":"This allows non-recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.","permissions":["read-meta","scope-desktop-index"]},"allow-desktop-meta-recursive":{"identifier":"allow-desktop-meta-recursive","description":"This allows full recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.","permissions":["read-meta","scope-desktop-recursive"]},"allow-desktop-read":{"identifier":"allow-desktop-read","description":"This allows non-recursive read access to the `$DESKTOP` folder.","permissions":["read-all","scope-desktop"]},"allow-desktop-read-recursive":{"identifier":"allow-desktop-read-recursive","description":"This allows full recursive read access to the complete `$DESKTOP` folder, files and subdirectories.","permissions":["read-all","scope-desktop-recursive"]},"allow-desktop-write":{"identifier":"allow-desktop-write","description":"This allows non-recursive write access to the `$DESKTOP` folder.","permissions":["write-all","scope-desktop"]},"allow-desktop-write-recursive":{"identifier":"allow-desktop-write-recursive","description":"This allows full recursive write access to the complete `$DESKTOP` folder, files and subdirectories.","permissions":["write-all","scope-desktop-recursive"]},"allow-document-meta":{"identifier":"allow-document-meta","description":"This allows non-recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.","permissions":["read-meta","scope-document-index"]},"allow-document-meta-recursive":{"identifier":"allow-document-meta-recursive","description":"This allows full recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.","permissions":["read-meta","scope-document-recursive"]},"allow-document-read":{"identifier":"allow-document-read","description":"This allows non-recursive read access to the `$DOCUMENT` folder.","permissions":["read-all","scope-document"]},"allow-document-read-recursive":{"identifier":"allow-document-read-recursive","description":"This allows full recursive read access to the complete `$DOCUMENT` folder, files and subdirectories.","permissions":["read-all","scope-document-recursive"]},"allow-document-write":{"identifier":"allow-document-write","description":"This allows non-recursive write access to the `$DOCUMENT` folder.","permissions":["write-all","scope-document"]},"allow-document-write-recursive":{"identifier":"allow-document-write-recursive","description":"This allows full recursive write access to the complete `$DOCUMENT` folder, files and subdirectories.","permissions":["write-all","scope-document-recursive"]},"allow-download-meta":{"identifier":"allow-download-meta","description":"This allows non-recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.","permissions":["read-meta","scope-download-index"]},"allow-download-meta-recursive":{"identifier":"allow-download-meta-recursive","description":"This allows full recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.","permissions":["read-meta","scope-download-recursive"]},"allow-download-read":{"identifier":"allow-download-read","description":"This allows non-recursive read access to the `$DOWNLOAD` folder.","permissions":["read-all","scope-download"]},"allow-download-read-recursive":{"identifier":"allow-download-read-recursive","description":"This allows full recursive read access to the complete `$DOWNLOAD` folder, files and subdirectories.","permissions":["read-all","scope-download-recursive"]},"allow-download-write":{"identifier":"allow-download-write","description":"This allows non-recursive write access to the `$DOWNLOAD` folder.","permissions":["write-all","scope-download"]},"allow-download-write-recursive":{"identifier":"allow-download-write-recursive","description":"This allows full recursive write access to the complete `$DOWNLOAD` folder, files and subdirectories.","permissions":["write-all","scope-download-recursive"]},"allow-exe-meta":{"identifier":"allow-exe-meta","description":"This allows non-recursive read access to metadata of the `$EXE` folder, including file listing and statistics.","permissions":["read-meta","scope-exe-index"]},"allow-exe-meta-recursive":{"identifier":"allow-exe-meta-recursive","description":"This allows full recursive read access to metadata of the `$EXE` folder, including file listing and statistics.","permissions":["read-meta","scope-exe-recursive"]},"allow-exe-read":{"identifier":"allow-exe-read","description":"This allows non-recursive read access to the `$EXE` folder.","permissions":["read-all","scope-exe"]},"allow-exe-read-recursive":{"identifier":"allow-exe-read-recursive","description":"This allows full recursive read access to the complete `$EXE` folder, files and subdirectories.","permissions":["read-all","scope-exe-recursive"]},"allow-exe-write":{"identifier":"allow-exe-write","description":"This allows non-recursive write access to the `$EXE` folder.","permissions":["write-all","scope-exe"]},"allow-exe-write-recursive":{"identifier":"allow-exe-write-recursive","description":"This allows full recursive write access to the complete `$EXE` folder, files and subdirectories.","permissions":["write-all","scope-exe-recursive"]},"allow-font-meta":{"identifier":"allow-font-meta","description":"This allows non-recursive read access to metadata of the `$FONT` folder, including file listing and statistics.","permissions":["read-meta","scope-font-index"]},"allow-font-meta-recursive":{"identifier":"allow-font-meta-recursive","description":"This allows full recursive read access to metadata of the `$FONT` folder, including file listing and statistics.","permissions":["read-meta","scope-font-recursive"]},"allow-font-read":{"identifier":"allow-font-read","description":"This allows non-recursive read access to the `$FONT` folder.","permissions":["read-all","scope-font"]},"allow-font-read-recursive":{"identifier":"allow-font-read-recursive","description":"This allows full recursive read access to the complete `$FONT` folder, files and subdirectories.","permissions":["read-all","scope-font-recursive"]},"allow-font-write":{"identifier":"allow-font-write","description":"This allows non-recursive write access to the `$FONT` folder.","permissions":["write-all","scope-font"]},"allow-font-write-recursive":{"identifier":"allow-font-write-recursive","description":"This allows full recursive write access to the complete `$FONT` folder, files and subdirectories.","permissions":["write-all","scope-font-recursive"]},"allow-home-meta":{"identifier":"allow-home-meta","description":"This allows non-recursive read access to metadata of the `$HOME` folder, including file listing and statistics.","permissions":["read-meta","scope-home-index"]},"allow-home-meta-recursive":{"identifier":"allow-home-meta-recursive","description":"This allows full recursive read access to metadata of the `$HOME` folder, including file listing and statistics.","permissions":["read-meta","scope-home-recursive"]},"allow-home-read":{"identifier":"allow-home-read","description":"This allows non-recursive read access to the `$HOME` folder.","permissions":["read-all","scope-home"]},"allow-home-read-recursive":{"identifier":"allow-home-read-recursive","description":"This allows full recursive read access to the complete `$HOME` folder, files and subdirectories.","permissions":["read-all","scope-home-recursive"]},"allow-home-write":{"identifier":"allow-home-write","description":"This allows non-recursive write access to the `$HOME` folder.","permissions":["write-all","scope-home"]},"allow-home-write-recursive":{"identifier":"allow-home-write-recursive","description":"This allows full recursive write access to the complete `$HOME` folder, files and subdirectories.","permissions":["write-all","scope-home-recursive"]},"allow-localdata-meta":{"identifier":"allow-localdata-meta","description":"This allows non-recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.","permissions":["read-meta","scope-localdata-index"]},"allow-localdata-meta-recursive":{"identifier":"allow-localdata-meta-recursive","description":"This allows full recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.","permissions":["read-meta","scope-localdata-recursive"]},"allow-localdata-read":{"identifier":"allow-localdata-read","description":"This allows non-recursive read access to the `$LOCALDATA` folder.","permissions":["read-all","scope-localdata"]},"allow-localdata-read-recursive":{"identifier":"allow-localdata-read-recursive","description":"This allows full recursive read access to the complete `$LOCALDATA` folder, files and subdirectories.","permissions":["read-all","scope-localdata-recursive"]},"allow-localdata-write":{"identifier":"allow-localdata-write","description":"This allows non-recursive write access to the `$LOCALDATA` folder.","permissions":["write-all","scope-localdata"]},"allow-localdata-write-recursive":{"identifier":"allow-localdata-write-recursive","description":"This allows full recursive write access to the complete `$LOCALDATA` folder, files and subdirectories.","permissions":["write-all","scope-localdata-recursive"]},"allow-log-meta":{"identifier":"allow-log-meta","description":"This allows non-recursive read access to metadata of the `$LOG` folder, including file listing and statistics.","permissions":["read-meta","scope-log-index"]},"allow-log-meta-recursive":{"identifier":"allow-log-meta-recursive","description":"This allows full recursive read access to metadata of the `$LOG` folder, including file listing and statistics.","permissions":["read-meta","scope-log-recursive"]},"allow-log-read":{"identifier":"allow-log-read","description":"This allows non-recursive read access to the `$LOG` folder.","permissions":["read-all","scope-log"]},"allow-log-read-recursive":{"identifier":"allow-log-read-recursive","description":"This allows full recursive read access to the complete `$LOG` folder, files and subdirectories.","permissions":["read-all","scope-log-recursive"]},"allow-log-write":{"identifier":"allow-log-write","description":"This allows non-recursive write access to the `$LOG` folder.","permissions":["write-all","scope-log"]},"allow-log-write-recursive":{"identifier":"allow-log-write-recursive","description":"This allows full recursive write access to the complete `$LOG` folder, files and subdirectories.","permissions":["write-all","scope-log-recursive"]},"allow-picture-meta":{"identifier":"allow-picture-meta","description":"This allows non-recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.","permissions":["read-meta","scope-picture-index"]},"allow-picture-meta-recursive":{"identifier":"allow-picture-meta-recursive","description":"This allows full recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.","permissions":["read-meta","scope-picture-recursive"]},"allow-picture-read":{"identifier":"allow-picture-read","description":"This allows non-recursive read access to the `$PICTURE` folder.","permissions":["read-all","scope-picture"]},"allow-picture-read-recursive":{"identifier":"allow-picture-read-recursive","description":"This allows full recursive read access to the complete `$PICTURE` folder, files and subdirectories.","permissions":["read-all","scope-picture-recursive"]},"allow-picture-write":{"identifier":"allow-picture-write","description":"This allows non-recursive write access to the `$PICTURE` folder.","permissions":["write-all","scope-picture"]},"allow-picture-write-recursive":{"identifier":"allow-picture-write-recursive","description":"This allows full recursive write access to the complete `$PICTURE` folder, files and subdirectories.","permissions":["write-all","scope-picture-recursive"]},"allow-public-meta":{"identifier":"allow-public-meta","description":"This allows non-recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.","permissions":["read-meta","scope-public-index"]},"allow-public-meta-recursive":{"identifier":"allow-public-meta-recursive","description":"This allows full recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.","permissions":["read-meta","scope-public-recursive"]},"allow-public-read":{"identifier":"allow-public-read","description":"This allows non-recursive read access to the `$PUBLIC` folder.","permissions":["read-all","scope-public"]},"allow-public-read-recursive":{"identifier":"allow-public-read-recursive","description":"This allows full recursive read access to the complete `$PUBLIC` folder, files and subdirectories.","permissions":["read-all","scope-public-recursive"]},"allow-public-write":{"identifier":"allow-public-write","description":"This allows non-recursive write access to the `$PUBLIC` folder.","permissions":["write-all","scope-public"]},"allow-public-write-recursive":{"identifier":"allow-public-write-recursive","description":"This allows full recursive write access to the complete `$PUBLIC` folder, files and subdirectories.","permissions":["write-all","scope-public-recursive"]},"allow-resource-meta":{"identifier":"allow-resource-meta","description":"This allows non-recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.","permissions":["read-meta","scope-resource-index"]},"allow-resource-meta-recursive":{"identifier":"allow-resource-meta-recursive","description":"This allows full recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.","permissions":["read-meta","scope-resource-recursive"]},"allow-resource-read":{"identifier":"allow-resource-read","description":"This allows non-recursive read access to the `$RESOURCE` folder.","permissions":["read-all","scope-resource"]},"allow-resource-read-recursive":{"identifier":"allow-resource-read-recursive","description":"This allows full recursive read access to the complete `$RESOURCE` folder, files and subdirectories.","permissions":["read-all","scope-resource-recursive"]},"allow-resource-write":{"identifier":"allow-resource-write","description":"This allows non-recursive write access to the `$RESOURCE` folder.","permissions":["write-all","scope-resource"]},"allow-resource-write-recursive":{"identifier":"allow-resource-write-recursive","description":"This allows full recursive write access to the complete `$RESOURCE` folder, files and subdirectories.","permissions":["write-all","scope-resource-recursive"]},"allow-runtime-meta":{"identifier":"allow-runtime-meta","description":"This allows non-recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.","permissions":["read-meta","scope-runtime-index"]},"allow-runtime-meta-recursive":{"identifier":"allow-runtime-meta-recursive","description":"This allows full recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.","permissions":["read-meta","scope-runtime-recursive"]},"allow-runtime-read":{"identifier":"allow-runtime-read","description":"This allows non-recursive read access to the `$RUNTIME` folder.","permissions":["read-all","scope-runtime"]},"allow-runtime-read-recursive":{"identifier":"allow-runtime-read-recursive","description":"This allows full recursive read access to the complete `$RUNTIME` folder, files and subdirectories.","permissions":["read-all","scope-runtime-recursive"]},"allow-runtime-write":{"identifier":"allow-runtime-write","description":"This allows non-recursive write access to the `$RUNTIME` folder.","permissions":["write-all","scope-runtime"]},"allow-runtime-write-recursive":{"identifier":"allow-runtime-write-recursive","description":"This allows full recursive write access to the complete `$RUNTIME` folder, files and subdirectories.","permissions":["write-all","scope-runtime-recursive"]},"allow-temp-meta":{"identifier":"allow-temp-meta","description":"This allows non-recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.","permissions":["read-meta","scope-temp-index"]},"allow-temp-meta-recursive":{"identifier":"allow-temp-meta-recursive","description":"This allows full recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.","permissions":["read-meta","scope-temp-recursive"]},"allow-temp-read":{"identifier":"allow-temp-read","description":"This allows non-recursive read access to the `$TEMP` folder.","permissions":["read-all","scope-temp"]},"allow-temp-read-recursive":{"identifier":"allow-temp-read-recursive","description":"This allows full recursive read access to the complete `$TEMP` folder, files and subdirectories.","permissions":["read-all","scope-temp-recursive"]},"allow-temp-write":{"identifier":"allow-temp-write","description":"This allows non-recursive write access to the `$TEMP` folder.","permissions":["write-all","scope-temp"]},"allow-temp-write-recursive":{"identifier":"allow-temp-write-recursive","description":"This allows full recursive write access to the complete `$TEMP` folder, files and subdirectories.","permissions":["write-all","scope-temp-recursive"]},"allow-template-meta":{"identifier":"allow-template-meta","description":"This allows non-recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.","permissions":["read-meta","scope-template-index"]},"allow-template-meta-recursive":{"identifier":"allow-template-meta-recursive","description":"This allows full recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.","permissions":["read-meta","scope-template-recursive"]},"allow-template-read":{"identifier":"allow-template-read","description":"This allows non-recursive read access to the `$TEMPLATE` folder.","permissions":["read-all","scope-template"]},"allow-template-read-recursive":{"identifier":"allow-template-read-recursive","description":"This allows full recursive read access to the complete `$TEMPLATE` folder, files and subdirectories.","permissions":["read-all","scope-template-recursive"]},"allow-template-write":{"identifier":"allow-template-write","description":"This allows non-recursive write access to the `$TEMPLATE` folder.","permissions":["write-all","scope-template"]},"allow-template-write-recursive":{"identifier":"allow-template-write-recursive","description":"This allows full recursive write access to the complete `$TEMPLATE` folder, files and subdirectories.","permissions":["write-all","scope-template-recursive"]},"allow-video-meta":{"identifier":"allow-video-meta","description":"This allows non-recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.","permissions":["read-meta","scope-video-index"]},"allow-video-meta-recursive":{"identifier":"allow-video-meta-recursive","description":"This allows full recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.","permissions":["read-meta","scope-video-recursive"]},"allow-video-read":{"identifier":"allow-video-read","description":"This allows non-recursive read access to the `$VIDEO` folder.","permissions":["read-all","scope-video"]},"allow-video-read-recursive":{"identifier":"allow-video-read-recursive","description":"This allows full recursive read access to the complete `$VIDEO` folder, files and subdirectories.","permissions":["read-all","scope-video-recursive"]},"allow-video-write":{"identifier":"allow-video-write","description":"This allows non-recursive write access to the `$VIDEO` folder.","permissions":["write-all","scope-video"]},"allow-video-write-recursive":{"identifier":"allow-video-write-recursive","description":"This allows full recursive write access to the complete `$VIDEO` folder, files and subdirectories.","permissions":["write-all","scope-video-recursive"]},"deny-default":{"identifier":"deny-default","description":"This denies access to dangerous Tauri relevant files and folders by default.","permissions":["deny-webview-data-linux","deny-webview-data-windows"]}},"global_scope_schema":{"$schema":"http://json-schema.org/draft-07/schema#","anyOf":[{"description":"A path that can be accessed by the webview when using the fs APIs. FS scope path pattern.\n\nThe pattern can start with a variable that resolves to a system base directory. The variables are: `$AUDIO`, `$CACHE`, `$CONFIG`, `$DATA`, `$LOCALDATA`, `$DESKTOP`, `$DOCUMENT`, `$DOWNLOAD`, `$EXE`, `$FONT`, `$HOME`, `$PICTURE`, `$PUBLIC`, `$RUNTIME`, `$TEMPLATE`, `$VIDEO`, `$RESOURCE`, `$APP`, `$LOG`, `$TEMP`, `$APPCONFIG`, `$APPDATA`, `$APPLOCALDATA`, `$APPCACHE`, `$APPLOG`.","type":"string"},{"properties":{"path":{"description":"A path that can be accessed by the webview when using the fs APIs.\n\nThe pattern can start with a variable that resolves to a system base directory. The variables are: `$AUDIO`, `$CACHE`, `$CONFIG`, `$DATA`, `$LOCALDATA`, `$DESKTOP`, `$DOCUMENT`, `$DOWNLOAD`, `$EXE`, `$FONT`, `$HOME`, `$PICTURE`, `$PUBLIC`, `$RUNTIME`, `$TEMPLATE`, `$VIDEO`, `$RESOURCE`, `$APP`, `$LOG`, `$TEMP`, `$APPCONFIG`, `$APPDATA`, `$APPLOCALDATA`, `$APPCACHE`, `$APPLOG`.","type":"string"}},"required":["path"],"type":"object"}],"description":"FS scope entry.","title":"FsScopeEntry"}},"shell":{"default_permission":{"identifier":"default","description":"This permission set configures which\nshell functionality is exposed by default.\n\n#### Granted Permissions\n\nIt allows to use the `open` functionality with a reasonable\nscope pre-configured. It will allow opening `http(s)://`,\n`tel:` and `mailto:` links.\n","permissions":["allow-open"]},"permissions":{"allow-execute":{"identifier":"allow-execute","description":"Enables the execute command without any pre-configured scope.","commands":{"allow":["execute"],"deny":[]}},"allow-kill":{"identifier":"allow-kill","description":"Enables the kill command without any pre-configured scope.","commands":{"allow":["kill"],"deny":[]}},"allow-open":{"identifier":"allow-open","description":"Enables the open command without any pre-configured scope.","commands":{"allow":["open"],"deny":[]}},"allow-spawn":{"identifier":"allow-spawn","description":"Enables the spawn command without any pre-configured scope.","commands":{"allow":["spawn"],"deny":[]}},"allow-stdin-write":{"identifier":"allow-stdin-write","description":"Enables the stdin_write command without any pre-configured scope.","commands":{"allow":["stdin_write"],"deny":[]}},"deny-execute":{"identifier":"deny-execute","description":"Denies the execute command without any pre-configured scope.","commands":{"allow":[],"deny":["execute"]}},"deny-kill":{"identifier":"deny-kill","description":"Denies the kill command without any pre-configured scope.","commands":{"allow":[],"deny":["kill"]}},"deny-open":{"identifier":"deny-open","description":"Denies the open command without any pre-configured scope.","commands":{"allow":[],"deny":["open"]}},"deny-spawn":{"identifier":"deny-spawn","description":"Denies the spawn command without any pre-configured scope.","commands":{"allow":[],"deny":["spawn"]}},"deny-stdin-write":{"identifier":"deny-stdin-write","description":"Denies the stdin_write command without any pre-configured scope.","commands":{"allow":[],"deny":["stdin_write"]}}},"permission_sets":{},"global_scope_schema":{"$schema":"http://json-schema.org/draft-07/schema#","anyOf":[{"additionalProperties":false,"properties":{"args":{"allOf":[{"$ref":"#/definitions/ShellScopeEntryAllowedArgs"}],"description":"The allowed arguments for the command execution."},"cmd":{"description":"The command name. It can start with a variable that resolves to a system base directory. The variables are: `$AUDIO`, `$CACHE`, `$CONFIG`, `$DATA`, `$LOCALDATA`, `$DESKTOP`, `$DOCUMENT`, `$DOWNLOAD`, `$EXE`, `$FONT`, `$HOME`, `$PICTURE`, `$PUBLIC`, `$RUNTIME`, `$TEMPLATE`, `$VIDEO`, `$RESOURCE`, `$LOG`, `$TEMP`, `$APPCONFIG`, `$APPDATA`, `$APPLOCALDATA`, `$APPCACHE`, `$APPLOG`.","type":"string"},"name":{"description":"The name for this allowed shell command configuration.\n\nThis name will be used inside of the webview API to call this command along with any specified arguments.","type":"string"}},"required":["cmd","name"],"type":"object"},{"additionalProperties":false,"properties":{"args":{"allOf":[{"$ref":"#/definitions/ShellScopeEntryAllowedArgs"}],"description":"The allowed arguments for the command execution."},"name":{"description":"The name for this allowed shell command configuration.\n\nThis name will be used inside of the webview API to call this command along with any specified arguments.","type":"string"},"sidecar":{"description":"If this command is a sidecar command.","type":"boolean"}},"required":["name","sidecar"],"type":"object"}],"definitions":{"ShellScopeEntryAllowedArg":{"anyOf":[{"description":"A non-configurable argument that is passed to the command in the order it was specified.","type":"string"},{"additionalProperties":false,"description":"A variable that is set while calling the command from the webview API.","properties":{"raw":{"default":false,"description":"Marks the validator as a raw regex, meaning the plugin should not make any modification at runtime.\n\nThis means the regex will not match on the entire string by default, which might be exploited if your regex allow unexpected input to be considered valid. When using this option, make sure your regex is correct.","type":"boolean"},"validator":{"description":"[regex] validator to require passed values to conform to an expected input.\n\nThis will require the argument value passed to this variable to match the `validator` regex before it will be executed.\n\nThe regex string is by default surrounded by `^...$` to match the full string. For example the `https?://\\w+` regex would be registered as `^https?://\\w+$`.\n\n[regex]: ","type":"string"}},"required":["validator"],"type":"object"}],"description":"A command argument allowed to be executed by the webview API."},"ShellScopeEntryAllowedArgs":{"anyOf":[{"description":"Use a simple boolean to allow all or disable all arguments to this command configuration.","type":"boolean"},{"description":"A specific set of [`ShellScopeEntryAllowedArg`] that are valid to call for the command configuration.","items":{"$ref":"#/definitions/ShellScopeEntryAllowedArg"},"type":"array"}],"description":"A set of command arguments allowed to be executed by the webview API.\n\nA value of `true` will allow any arguments to be passed to the command. `false` will disable all arguments. A list of [`ShellScopeEntryAllowedArg`] will set those arguments as the only valid arguments to be passed to the attached command configuration."}},"description":"Shell scope entry.","title":"ShellScopeEntry"}}} \ No newline at end of file diff --git a/posimai-guard-app/src-tauri/gen/schemas/capabilities.json b/posimai-guard-app/src-tauri/gen/schemas/capabilities.json new file mode 100644 index 00000000..d654098b --- /dev/null +++ b/posimai-guard-app/src-tauri/gen/schemas/capabilities.json @@ -0,0 +1 @@ +{"default":{"identifier":"default","description":"Posimai Guard desktop capabilities","local":true,"windows":["main"],"permissions":["core:default","dialog:allow-open","dialog:allow-save","dialog:allow-message","dialog:allow-ask","fs:allow-read-text-file","fs:allow-write-text-file","fs:allow-read-dir","fs:allow-exists","shell:allow-open"]}} \ No newline at end of file diff --git a/posimai-guard-app/src-tauri/gen/schemas/desktop-schema.json b/posimai-guard-app/src-tauri/gen/schemas/desktop-schema.json new file mode 100644 index 00000000..c8247831 --- /dev/null +++ b/posimai-guard-app/src-tauri/gen/schemas/desktop-schema.json @@ -0,0 +1,6206 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "CapabilityFile", + "description": "Capability formats accepted in a capability file.", + "anyOf": [ + { + "description": "A single capability.", + "allOf": [ + { + "$ref": "#/definitions/Capability" + } + ] + }, + { + "description": "A list of capabilities.", + "type": "array", + "items": { + "$ref": "#/definitions/Capability" + } + }, + { + "description": "A list of capabilities.", + "type": "object", + "required": [ + "capabilities" + ], + "properties": { + "capabilities": { + "description": "The list of capabilities.", + "type": "array", + "items": { + "$ref": "#/definitions/Capability" + } + } + } + } + ], + "definitions": { + "Capability": { + "description": "A grouping and boundary mechanism developers can use to isolate access to the IPC layer.\n\nIt controls application windows' and webviews' fine grained access to the Tauri core, application, or plugin commands. If a webview or its window is not matching any capability then it has no access to the IPC layer at all.\n\nThis can be done to create groups of windows, based on their required system access, which can reduce impact of frontend vulnerabilities in less privileged windows. Windows can be added to a capability by exact name (e.g. `main-window`) or glob patterns like `*` or `admin-*`. A Window can have none, one, or multiple associated capabilities.\n\n## Example\n\n```json { \"identifier\": \"main-user-files-write\", \"description\": \"This capability allows the `main` window on macOS and Windows access to `filesystem` write related commands and `dialog` commands to enable programmatic access to files selected by the user.\", \"windows\": [ \"main\" ], \"permissions\": [ \"core:default\", \"dialog:open\", { \"identifier\": \"fs:allow-write-text-file\", \"allow\": [{ \"path\": \"$HOME/test.txt\" }] }, ], \"platforms\": [\"macOS\",\"windows\"] } ```", + "type": "object", + "required": [ + "identifier", + "permissions" + ], + "properties": { + "identifier": { + "description": "Identifier of the capability.\n\n## Example\n\n`main-user-files-write`", + "type": "string" + }, + "description": { + "description": "Description of what the capability is intended to allow on associated windows.\n\nIt should contain a description of what the grouped permissions should allow.\n\n## Example\n\nThis capability allows the `main` window access to `filesystem` write related commands and `dialog` commands to enable programmatic access to files selected by the user.", + "default": "", + "type": "string" + }, + "remote": { + "description": "Configure remote URLs that can use the capability permissions.\n\nThis setting is optional and defaults to not being set, as our default use case is that the content is served from our local application.\n\n:::caution Make sure you understand the security implications of providing remote sources with local system access. :::\n\n## Example\n\n```json { \"urls\": [\"https://*.mydomain.dev\"] } ```", + "anyOf": [ + { + "$ref": "#/definitions/CapabilityRemote" + }, + { + "type": "null" + } + ] + }, + "local": { + "description": "Whether this capability is enabled for local app URLs or not. Defaults to `true`.", + "default": true, + "type": "boolean" + }, + "windows": { + "description": "List of windows that are affected by this capability. Can be a glob pattern.\n\nIf a window label matches any of the patterns in this list, the capability will be enabled on all the webviews of that window, regardless of the value of [`Self::webviews`].\n\nOn multiwebview windows, prefer specifying [`Self::webviews`] and omitting [`Self::windows`] for a fine grained access control.\n\n## Example\n\n`[\"main\"]`", + "type": "array", + "items": { + "type": "string" + } + }, + "webviews": { + "description": "List of webviews that are affected by this capability. Can be a glob pattern.\n\nThe capability will be enabled on all the webviews whose label matches any of the patterns in this list, regardless of whether the webview's window label matches a pattern in [`Self::windows`].\n\n## Example\n\n`[\"sub-webview-one\", \"sub-webview-two\"]`", + "type": "array", + "items": { + "type": "string" + } + }, + "permissions": { + "description": "List of permissions attached to this capability.\n\nMust include the plugin name as prefix in the form of `${plugin-name}:${permission-name}`. For commands directly implemented in the application itself only `${permission-name}` is required.\n\n## Example\n\n```json [ \"core:default\", \"shell:allow-open\", \"dialog:open\", { \"identifier\": \"fs:allow-write-text-file\", \"allow\": [{ \"path\": \"$HOME/test.txt\" }] } ] ```", + "type": "array", + "items": { + "$ref": "#/definitions/PermissionEntry" + }, + "uniqueItems": true + }, + "platforms": { + "description": "Limit which target platforms this capability applies to.\n\nBy default all platforms are targeted.\n\n## Example\n\n`[\"macOS\",\"windows\"]`", + "type": [ + "array", + "null" + ], + "items": { + "$ref": "#/definitions/Target" + } + } + } + }, + "CapabilityRemote": { + "description": "Configuration for remote URLs that are associated with the capability.", + "type": "object", + "required": [ + "urls" + ], + "properties": { + "urls": { + "description": "Remote domains this capability refers to using the [URLPattern standard](https://urlpattern.spec.whatwg.org/).\n\n## Examples\n\n- \"https://*.mydomain.dev\": allows subdomains of mydomain.dev - \"https://mydomain.dev/api/*\": allows any subpath of mydomain.dev/api", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "PermissionEntry": { + "description": "An entry for a permission value in a [`Capability`] can be either a raw permission [`Identifier`] or an object that references a permission and extends its scope.", + "anyOf": [ + { + "description": "Reference a permission or permission set by identifier.", + "allOf": [ + { + "$ref": "#/definitions/Identifier" + } + ] + }, + { + "description": "Reference a permission or permission set by identifier and extends its scope.", + "type": "object", + "allOf": [ + { + "if": { + "properties": { + "identifier": { + "anyOf": [ + { + "description": "This set of permissions describes the what kind of\nfile system access the `fs` plugin has enabled or denied by default.\n\n#### Granted Permissions\n\nThis default permission set enables read access to the\napplication specific directories (AppConfig, AppData, AppLocalData, AppCache,\nAppLog) and all files and sub directories created in it.\nThe location of these directories depends on the operating system,\nwhere the application is run.\n\nIn general these directories need to be manually created\nby the application at runtime, before accessing files or folders\nin it is possible.\n\nTherefore, it is also allowed to create all of these folders via\nthe `mkdir` command.\n\n#### Denied Permissions\n\nThis default permission set prevents access to critical components\nof the Tauri application by default.\nOn Windows the webview data folder access is denied.\n\n#### This default permission set includes:\n\n- `create-app-specific-dirs`\n- `read-app-specific-dirs-recursive`\n- `deny-default`", + "type": "string", + "const": "fs:default", + "markdownDescription": "This set of permissions describes the what kind of\nfile system access the `fs` plugin has enabled or denied by default.\n\n#### Granted Permissions\n\nThis default permission set enables read access to the\napplication specific directories (AppConfig, AppData, AppLocalData, AppCache,\nAppLog) and all files and sub directories created in it.\nThe location of these directories depends on the operating system,\nwhere the application is run.\n\nIn general these directories need to be manually created\nby the application at runtime, before accessing files or folders\nin it is possible.\n\nTherefore, it is also allowed to create all of these folders via\nthe `mkdir` command.\n\n#### Denied Permissions\n\nThis default permission set prevents access to critical components\nof the Tauri application by default.\nOn Windows the webview data folder access is denied.\n\n#### This default permission set includes:\n\n- `create-app-specific-dirs`\n- `read-app-specific-dirs-recursive`\n- `deny-default`" + }, + { + "description": "This allows non-recursive read access to metadata of the application folders, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-app-index`", + "type": "string", + "const": "fs:allow-app-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the application folders, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-app-index`" + }, + { + "description": "This allows full recursive read access to metadata of the application folders, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-app-recursive`", + "type": "string", + "const": "fs:allow-app-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the application folders, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-app-recursive`" + }, + { + "description": "This allows non-recursive read access to the application folders.\n#### This permission set includes:\n\n- `read-all`\n- `scope-app`", + "type": "string", + "const": "fs:allow-app-read", + "markdownDescription": "This allows non-recursive read access to the application folders.\n#### This permission set includes:\n\n- `read-all`\n- `scope-app`" + }, + { + "description": "This allows full recursive read access to the complete application folders, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-app-recursive`", + "type": "string", + "const": "fs:allow-app-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete application folders, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-app-recursive`" + }, + { + "description": "This allows non-recursive write access to the application folders.\n#### This permission set includes:\n\n- `write-all`\n- `scope-app`", + "type": "string", + "const": "fs:allow-app-write", + "markdownDescription": "This allows non-recursive write access to the application folders.\n#### This permission set includes:\n\n- `write-all`\n- `scope-app`" + }, + { + "description": "This allows full recursive write access to the complete application folders, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-app-recursive`", + "type": "string", + "const": "fs:allow-app-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete application folders, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-app-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appcache-index`", + "type": "string", + "const": "fs:allow-appcache-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appcache-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appcache-recursive`", + "type": "string", + "const": "fs:allow-appcache-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appcache-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$APPCACHE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appcache`", + "type": "string", + "const": "fs:allow-appcache-read", + "markdownDescription": "This allows non-recursive read access to the `$APPCACHE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appcache`" + }, + { + "description": "This allows full recursive read access to the complete `$APPCACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appcache-recursive`", + "type": "string", + "const": "fs:allow-appcache-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$APPCACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appcache-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$APPCACHE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appcache`", + "type": "string", + "const": "fs:allow-appcache-write", + "markdownDescription": "This allows non-recursive write access to the `$APPCACHE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appcache`" + }, + { + "description": "This allows full recursive write access to the complete `$APPCACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appcache-recursive`", + "type": "string", + "const": "fs:allow-appcache-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$APPCACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appcache-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appconfig-index`", + "type": "string", + "const": "fs:allow-appconfig-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appconfig-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appconfig-recursive`", + "type": "string", + "const": "fs:allow-appconfig-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appconfig-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$APPCONFIG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appconfig`", + "type": "string", + "const": "fs:allow-appconfig-read", + "markdownDescription": "This allows non-recursive read access to the `$APPCONFIG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appconfig`" + }, + { + "description": "This allows full recursive read access to the complete `$APPCONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appconfig-recursive`", + "type": "string", + "const": "fs:allow-appconfig-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$APPCONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appconfig-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$APPCONFIG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appconfig`", + "type": "string", + "const": "fs:allow-appconfig-write", + "markdownDescription": "This allows non-recursive write access to the `$APPCONFIG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appconfig`" + }, + { + "description": "This allows full recursive write access to the complete `$APPCONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appconfig-recursive`", + "type": "string", + "const": "fs:allow-appconfig-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$APPCONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appconfig-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appdata-index`", + "type": "string", + "const": "fs:allow-appdata-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appdata-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appdata-recursive`", + "type": "string", + "const": "fs:allow-appdata-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appdata-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$APPDATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appdata`", + "type": "string", + "const": "fs:allow-appdata-read", + "markdownDescription": "This allows non-recursive read access to the `$APPDATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appdata`" + }, + { + "description": "This allows full recursive read access to the complete `$APPDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appdata-recursive`", + "type": "string", + "const": "fs:allow-appdata-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$APPDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appdata-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$APPDATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appdata`", + "type": "string", + "const": "fs:allow-appdata-write", + "markdownDescription": "This allows non-recursive write access to the `$APPDATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appdata`" + }, + { + "description": "This allows full recursive write access to the complete `$APPDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appdata-recursive`", + "type": "string", + "const": "fs:allow-appdata-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$APPDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appdata-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applocaldata-index`", + "type": "string", + "const": "fs:allow-applocaldata-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applocaldata-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applocaldata-recursive`", + "type": "string", + "const": "fs:allow-applocaldata-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applocaldata-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$APPLOCALDATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applocaldata`", + "type": "string", + "const": "fs:allow-applocaldata-read", + "markdownDescription": "This allows non-recursive read access to the `$APPLOCALDATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applocaldata`" + }, + { + "description": "This allows full recursive read access to the complete `$APPLOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applocaldata-recursive`", + "type": "string", + "const": "fs:allow-applocaldata-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$APPLOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applocaldata-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$APPLOCALDATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applocaldata`", + "type": "string", + "const": "fs:allow-applocaldata-write", + "markdownDescription": "This allows non-recursive write access to the `$APPLOCALDATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applocaldata`" + }, + { + "description": "This allows full recursive write access to the complete `$APPLOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applocaldata-recursive`", + "type": "string", + "const": "fs:allow-applocaldata-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$APPLOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applocaldata-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applog-index`", + "type": "string", + "const": "fs:allow-applog-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applog-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applog-recursive`", + "type": "string", + "const": "fs:allow-applog-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applog-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$APPLOG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applog`", + "type": "string", + "const": "fs:allow-applog-read", + "markdownDescription": "This allows non-recursive read access to the `$APPLOG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applog`" + }, + { + "description": "This allows full recursive read access to the complete `$APPLOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applog-recursive`", + "type": "string", + "const": "fs:allow-applog-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$APPLOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applog-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$APPLOG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applog`", + "type": "string", + "const": "fs:allow-applog-write", + "markdownDescription": "This allows non-recursive write access to the `$APPLOG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applog`" + }, + { + "description": "This allows full recursive write access to the complete `$APPLOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applog-recursive`", + "type": "string", + "const": "fs:allow-applog-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$APPLOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applog-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-audio-index`", + "type": "string", + "const": "fs:allow-audio-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-audio-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-audio-recursive`", + "type": "string", + "const": "fs:allow-audio-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-audio-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$AUDIO` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-audio`", + "type": "string", + "const": "fs:allow-audio-read", + "markdownDescription": "This allows non-recursive read access to the `$AUDIO` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-audio`" + }, + { + "description": "This allows full recursive read access to the complete `$AUDIO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-audio-recursive`", + "type": "string", + "const": "fs:allow-audio-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$AUDIO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-audio-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$AUDIO` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-audio`", + "type": "string", + "const": "fs:allow-audio-write", + "markdownDescription": "This allows non-recursive write access to the `$AUDIO` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-audio`" + }, + { + "description": "This allows full recursive write access to the complete `$AUDIO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-audio-recursive`", + "type": "string", + "const": "fs:allow-audio-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$AUDIO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-audio-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-cache-index`", + "type": "string", + "const": "fs:allow-cache-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-cache-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-cache-recursive`", + "type": "string", + "const": "fs:allow-cache-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-cache-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$CACHE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-cache`", + "type": "string", + "const": "fs:allow-cache-read", + "markdownDescription": "This allows non-recursive read access to the `$CACHE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-cache`" + }, + { + "description": "This allows full recursive read access to the complete `$CACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-cache-recursive`", + "type": "string", + "const": "fs:allow-cache-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$CACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-cache-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$CACHE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-cache`", + "type": "string", + "const": "fs:allow-cache-write", + "markdownDescription": "This allows non-recursive write access to the `$CACHE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-cache`" + }, + { + "description": "This allows full recursive write access to the complete `$CACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-cache-recursive`", + "type": "string", + "const": "fs:allow-cache-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$CACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-cache-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-config-index`", + "type": "string", + "const": "fs:allow-config-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-config-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-config-recursive`", + "type": "string", + "const": "fs:allow-config-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-config-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$CONFIG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-config`", + "type": "string", + "const": "fs:allow-config-read", + "markdownDescription": "This allows non-recursive read access to the `$CONFIG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-config`" + }, + { + "description": "This allows full recursive read access to the complete `$CONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-config-recursive`", + "type": "string", + "const": "fs:allow-config-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$CONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-config-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$CONFIG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-config`", + "type": "string", + "const": "fs:allow-config-write", + "markdownDescription": "This allows non-recursive write access to the `$CONFIG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-config`" + }, + { + "description": "This allows full recursive write access to the complete `$CONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-config-recursive`", + "type": "string", + "const": "fs:allow-config-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$CONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-config-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$DATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-data-index`", + "type": "string", + "const": "fs:allow-data-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$DATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-data-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$DATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-data-recursive`", + "type": "string", + "const": "fs:allow-data-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$DATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-data-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$DATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-data`", + "type": "string", + "const": "fs:allow-data-read", + "markdownDescription": "This allows non-recursive read access to the `$DATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-data`" + }, + { + "description": "This allows full recursive read access to the complete `$DATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-data-recursive`", + "type": "string", + "const": "fs:allow-data-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$DATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-data-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$DATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-data`", + "type": "string", + "const": "fs:allow-data-write", + "markdownDescription": "This allows non-recursive write access to the `$DATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-data`" + }, + { + "description": "This allows full recursive write access to the complete `$DATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-data-recursive`", + "type": "string", + "const": "fs:allow-data-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$DATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-data-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-desktop-index`", + "type": "string", + "const": "fs:allow-desktop-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-desktop-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-desktop-recursive`", + "type": "string", + "const": "fs:allow-desktop-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-desktop-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$DESKTOP` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-desktop`", + "type": "string", + "const": "fs:allow-desktop-read", + "markdownDescription": "This allows non-recursive read access to the `$DESKTOP` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-desktop`" + }, + { + "description": "This allows full recursive read access to the complete `$DESKTOP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-desktop-recursive`", + "type": "string", + "const": "fs:allow-desktop-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$DESKTOP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-desktop-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$DESKTOP` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-desktop`", + "type": "string", + "const": "fs:allow-desktop-write", + "markdownDescription": "This allows non-recursive write access to the `$DESKTOP` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-desktop`" + }, + { + "description": "This allows full recursive write access to the complete `$DESKTOP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-desktop-recursive`", + "type": "string", + "const": "fs:allow-desktop-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$DESKTOP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-desktop-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-document-index`", + "type": "string", + "const": "fs:allow-document-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-document-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-document-recursive`", + "type": "string", + "const": "fs:allow-document-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-document-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$DOCUMENT` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-document`", + "type": "string", + "const": "fs:allow-document-read", + "markdownDescription": "This allows non-recursive read access to the `$DOCUMENT` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-document`" + }, + { + "description": "This allows full recursive read access to the complete `$DOCUMENT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-document-recursive`", + "type": "string", + "const": "fs:allow-document-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$DOCUMENT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-document-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$DOCUMENT` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-document`", + "type": "string", + "const": "fs:allow-document-write", + "markdownDescription": "This allows non-recursive write access to the `$DOCUMENT` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-document`" + }, + { + "description": "This allows full recursive write access to the complete `$DOCUMENT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-document-recursive`", + "type": "string", + "const": "fs:allow-document-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$DOCUMENT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-document-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-download-index`", + "type": "string", + "const": "fs:allow-download-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-download-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-download-recursive`", + "type": "string", + "const": "fs:allow-download-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-download-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$DOWNLOAD` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-download`", + "type": "string", + "const": "fs:allow-download-read", + "markdownDescription": "This allows non-recursive read access to the `$DOWNLOAD` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-download`" + }, + { + "description": "This allows full recursive read access to the complete `$DOWNLOAD` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-download-recursive`", + "type": "string", + "const": "fs:allow-download-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$DOWNLOAD` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-download-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$DOWNLOAD` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-download`", + "type": "string", + "const": "fs:allow-download-write", + "markdownDescription": "This allows non-recursive write access to the `$DOWNLOAD` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-download`" + }, + { + "description": "This allows full recursive write access to the complete `$DOWNLOAD` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-download-recursive`", + "type": "string", + "const": "fs:allow-download-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$DOWNLOAD` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-download-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$EXE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-exe-index`", + "type": "string", + "const": "fs:allow-exe-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$EXE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-exe-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$EXE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-exe-recursive`", + "type": "string", + "const": "fs:allow-exe-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$EXE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-exe-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$EXE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-exe`", + "type": "string", + "const": "fs:allow-exe-read", + "markdownDescription": "This allows non-recursive read access to the `$EXE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-exe`" + }, + { + "description": "This allows full recursive read access to the complete `$EXE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-exe-recursive`", + "type": "string", + "const": "fs:allow-exe-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$EXE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-exe-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$EXE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-exe`", + "type": "string", + "const": "fs:allow-exe-write", + "markdownDescription": "This allows non-recursive write access to the `$EXE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-exe`" + }, + { + "description": "This allows full recursive write access to the complete `$EXE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-exe-recursive`", + "type": "string", + "const": "fs:allow-exe-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$EXE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-exe-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$FONT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-font-index`", + "type": "string", + "const": "fs:allow-font-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$FONT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-font-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$FONT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-font-recursive`", + "type": "string", + "const": "fs:allow-font-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$FONT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-font-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$FONT` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-font`", + "type": "string", + "const": "fs:allow-font-read", + "markdownDescription": "This allows non-recursive read access to the `$FONT` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-font`" + }, + { + "description": "This allows full recursive read access to the complete `$FONT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-font-recursive`", + "type": "string", + "const": "fs:allow-font-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$FONT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-font-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$FONT` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-font`", + "type": "string", + "const": "fs:allow-font-write", + "markdownDescription": "This allows non-recursive write access to the `$FONT` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-font`" + }, + { + "description": "This allows full recursive write access to the complete `$FONT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-font-recursive`", + "type": "string", + "const": "fs:allow-font-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$FONT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-font-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$HOME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-home-index`", + "type": "string", + "const": "fs:allow-home-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$HOME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-home-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$HOME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-home-recursive`", + "type": "string", + "const": "fs:allow-home-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$HOME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-home-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$HOME` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-home`", + "type": "string", + "const": "fs:allow-home-read", + "markdownDescription": "This allows non-recursive read access to the `$HOME` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-home`" + }, + { + "description": "This allows full recursive read access to the complete `$HOME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-home-recursive`", + "type": "string", + "const": "fs:allow-home-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$HOME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-home-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$HOME` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-home`", + "type": "string", + "const": "fs:allow-home-write", + "markdownDescription": "This allows non-recursive write access to the `$HOME` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-home`" + }, + { + "description": "This allows full recursive write access to the complete `$HOME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-home-recursive`", + "type": "string", + "const": "fs:allow-home-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$HOME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-home-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-localdata-index`", + "type": "string", + "const": "fs:allow-localdata-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-localdata-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-localdata-recursive`", + "type": "string", + "const": "fs:allow-localdata-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-localdata-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$LOCALDATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-localdata`", + "type": "string", + "const": "fs:allow-localdata-read", + "markdownDescription": "This allows non-recursive read access to the `$LOCALDATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-localdata`" + }, + { + "description": "This allows full recursive read access to the complete `$LOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-localdata-recursive`", + "type": "string", + "const": "fs:allow-localdata-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$LOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-localdata-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$LOCALDATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-localdata`", + "type": "string", + "const": "fs:allow-localdata-write", + "markdownDescription": "This allows non-recursive write access to the `$LOCALDATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-localdata`" + }, + { + "description": "This allows full recursive write access to the complete `$LOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-localdata-recursive`", + "type": "string", + "const": "fs:allow-localdata-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$LOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-localdata-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$LOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-log-index`", + "type": "string", + "const": "fs:allow-log-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$LOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-log-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$LOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-log-recursive`", + "type": "string", + "const": "fs:allow-log-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$LOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-log-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$LOG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-log`", + "type": "string", + "const": "fs:allow-log-read", + "markdownDescription": "This allows non-recursive read access to the `$LOG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-log`" + }, + { + "description": "This allows full recursive read access to the complete `$LOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-log-recursive`", + "type": "string", + "const": "fs:allow-log-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$LOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-log-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$LOG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-log`", + "type": "string", + "const": "fs:allow-log-write", + "markdownDescription": "This allows non-recursive write access to the `$LOG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-log`" + }, + { + "description": "This allows full recursive write access to the complete `$LOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-log-recursive`", + "type": "string", + "const": "fs:allow-log-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$LOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-log-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-picture-index`", + "type": "string", + "const": "fs:allow-picture-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-picture-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-picture-recursive`", + "type": "string", + "const": "fs:allow-picture-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-picture-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$PICTURE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-picture`", + "type": "string", + "const": "fs:allow-picture-read", + "markdownDescription": "This allows non-recursive read access to the `$PICTURE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-picture`" + }, + { + "description": "This allows full recursive read access to the complete `$PICTURE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-picture-recursive`", + "type": "string", + "const": "fs:allow-picture-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$PICTURE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-picture-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$PICTURE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-picture`", + "type": "string", + "const": "fs:allow-picture-write", + "markdownDescription": "This allows non-recursive write access to the `$PICTURE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-picture`" + }, + { + "description": "This allows full recursive write access to the complete `$PICTURE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-picture-recursive`", + "type": "string", + "const": "fs:allow-picture-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$PICTURE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-picture-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-public-index`", + "type": "string", + "const": "fs:allow-public-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-public-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-public-recursive`", + "type": "string", + "const": "fs:allow-public-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-public-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$PUBLIC` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-public`", + "type": "string", + "const": "fs:allow-public-read", + "markdownDescription": "This allows non-recursive read access to the `$PUBLIC` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-public`" + }, + { + "description": "This allows full recursive read access to the complete `$PUBLIC` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-public-recursive`", + "type": "string", + "const": "fs:allow-public-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$PUBLIC` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-public-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$PUBLIC` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-public`", + "type": "string", + "const": "fs:allow-public-write", + "markdownDescription": "This allows non-recursive write access to the `$PUBLIC` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-public`" + }, + { + "description": "This allows full recursive write access to the complete `$PUBLIC` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-public-recursive`", + "type": "string", + "const": "fs:allow-public-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$PUBLIC` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-public-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-resource-index`", + "type": "string", + "const": "fs:allow-resource-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-resource-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-resource-recursive`", + "type": "string", + "const": "fs:allow-resource-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-resource-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$RESOURCE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-resource`", + "type": "string", + "const": "fs:allow-resource-read", + "markdownDescription": "This allows non-recursive read access to the `$RESOURCE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-resource`" + }, + { + "description": "This allows full recursive read access to the complete `$RESOURCE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-resource-recursive`", + "type": "string", + "const": "fs:allow-resource-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$RESOURCE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-resource-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$RESOURCE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-resource`", + "type": "string", + "const": "fs:allow-resource-write", + "markdownDescription": "This allows non-recursive write access to the `$RESOURCE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-resource`" + }, + { + "description": "This allows full recursive write access to the complete `$RESOURCE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-resource-recursive`", + "type": "string", + "const": "fs:allow-resource-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$RESOURCE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-resource-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-runtime-index`", + "type": "string", + "const": "fs:allow-runtime-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-runtime-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-runtime-recursive`", + "type": "string", + "const": "fs:allow-runtime-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-runtime-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$RUNTIME` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-runtime`", + "type": "string", + "const": "fs:allow-runtime-read", + "markdownDescription": "This allows non-recursive read access to the `$RUNTIME` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-runtime`" + }, + { + "description": "This allows full recursive read access to the complete `$RUNTIME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-runtime-recursive`", + "type": "string", + "const": "fs:allow-runtime-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$RUNTIME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-runtime-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$RUNTIME` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-runtime`", + "type": "string", + "const": "fs:allow-runtime-write", + "markdownDescription": "This allows non-recursive write access to the `$RUNTIME` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-runtime`" + }, + { + "description": "This allows full recursive write access to the complete `$RUNTIME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-runtime-recursive`", + "type": "string", + "const": "fs:allow-runtime-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$RUNTIME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-runtime-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-temp-index`", + "type": "string", + "const": "fs:allow-temp-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-temp-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-temp-recursive`", + "type": "string", + "const": "fs:allow-temp-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-temp-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$TEMP` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-temp`", + "type": "string", + "const": "fs:allow-temp-read", + "markdownDescription": "This allows non-recursive read access to the `$TEMP` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-temp`" + }, + { + "description": "This allows full recursive read access to the complete `$TEMP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-temp-recursive`", + "type": "string", + "const": "fs:allow-temp-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$TEMP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-temp-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$TEMP` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-temp`", + "type": "string", + "const": "fs:allow-temp-write", + "markdownDescription": "This allows non-recursive write access to the `$TEMP` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-temp`" + }, + { + "description": "This allows full recursive write access to the complete `$TEMP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-temp-recursive`", + "type": "string", + "const": "fs:allow-temp-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$TEMP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-temp-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-template-index`", + "type": "string", + "const": "fs:allow-template-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-template-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-template-recursive`", + "type": "string", + "const": "fs:allow-template-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-template-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$TEMPLATE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-template`", + "type": "string", + "const": "fs:allow-template-read", + "markdownDescription": "This allows non-recursive read access to the `$TEMPLATE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-template`" + }, + { + "description": "This allows full recursive read access to the complete `$TEMPLATE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-template-recursive`", + "type": "string", + "const": "fs:allow-template-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$TEMPLATE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-template-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$TEMPLATE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-template`", + "type": "string", + "const": "fs:allow-template-write", + "markdownDescription": "This allows non-recursive write access to the `$TEMPLATE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-template`" + }, + { + "description": "This allows full recursive write access to the complete `$TEMPLATE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-template-recursive`", + "type": "string", + "const": "fs:allow-template-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$TEMPLATE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-template-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-video-index`", + "type": "string", + "const": "fs:allow-video-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-video-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-video-recursive`", + "type": "string", + "const": "fs:allow-video-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-video-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$VIDEO` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-video`", + "type": "string", + "const": "fs:allow-video-read", + "markdownDescription": "This allows non-recursive read access to the `$VIDEO` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-video`" + }, + { + "description": "This allows full recursive read access to the complete `$VIDEO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-video-recursive`", + "type": "string", + "const": "fs:allow-video-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$VIDEO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-video-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$VIDEO` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-video`", + "type": "string", + "const": "fs:allow-video-write", + "markdownDescription": "This allows non-recursive write access to the `$VIDEO` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-video`" + }, + { + "description": "This allows full recursive write access to the complete `$VIDEO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-video-recursive`", + "type": "string", + "const": "fs:allow-video-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$VIDEO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-video-recursive`" + }, + { + "description": "This denies access to dangerous Tauri relevant files and folders by default.\n#### This permission set includes:\n\n- `deny-webview-data-linux`\n- `deny-webview-data-windows`", + "type": "string", + "const": "fs:deny-default", + "markdownDescription": "This denies access to dangerous Tauri relevant files and folders by default.\n#### This permission set includes:\n\n- `deny-webview-data-linux`\n- `deny-webview-data-windows`" + }, + { + "description": "Enables the copy_file command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-copy-file", + "markdownDescription": "Enables the copy_file command without any pre-configured scope." + }, + { + "description": "Enables the create command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-create", + "markdownDescription": "Enables the create command without any pre-configured scope." + }, + { + "description": "Enables the exists command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-exists", + "markdownDescription": "Enables the exists command without any pre-configured scope." + }, + { + "description": "Enables the fstat command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-fstat", + "markdownDescription": "Enables the fstat command without any pre-configured scope." + }, + { + "description": "Enables the ftruncate command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-ftruncate", + "markdownDescription": "Enables the ftruncate command without any pre-configured scope." + }, + { + "description": "Enables the lstat command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-lstat", + "markdownDescription": "Enables the lstat command without any pre-configured scope." + }, + { + "description": "Enables the mkdir command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-mkdir", + "markdownDescription": "Enables the mkdir command without any pre-configured scope." + }, + { + "description": "Enables the open command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-open", + "markdownDescription": "Enables the open command without any pre-configured scope." + }, + { + "description": "Enables the read command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-read", + "markdownDescription": "Enables the read command without any pre-configured scope." + }, + { + "description": "Enables the read_dir command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-read-dir", + "markdownDescription": "Enables the read_dir command without any pre-configured scope." + }, + { + "description": "Enables the read_file command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-read-file", + "markdownDescription": "Enables the read_file command without any pre-configured scope." + }, + { + "description": "Enables the read_text_file command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-read-text-file", + "markdownDescription": "Enables the read_text_file command without any pre-configured scope." + }, + { + "description": "Enables the read_text_file_lines command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-read-text-file-lines", + "markdownDescription": "Enables the read_text_file_lines command without any pre-configured scope." + }, + { + "description": "Enables the read_text_file_lines_next command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-read-text-file-lines-next", + "markdownDescription": "Enables the read_text_file_lines_next command without any pre-configured scope." + }, + { + "description": "Enables the remove command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-remove", + "markdownDescription": "Enables the remove command without any pre-configured scope." + }, + { + "description": "Enables the rename command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-rename", + "markdownDescription": "Enables the rename command without any pre-configured scope." + }, + { + "description": "Enables the seek command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-seek", + "markdownDescription": "Enables the seek command without any pre-configured scope." + }, + { + "description": "Enables the size command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-size", + "markdownDescription": "Enables the size command without any pre-configured scope." + }, + { + "description": "Enables the start_accessing_security_scoped_resource command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-start-accessing-security-scoped-resource", + "markdownDescription": "Enables the start_accessing_security_scoped_resource command without any pre-configured scope." + }, + { + "description": "Enables the stat command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-stat", + "markdownDescription": "Enables the stat command without any pre-configured scope." + }, + { + "description": "Enables the stop_accessing_security_scoped_resource command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-stop-accessing-security-scoped-resource", + "markdownDescription": "Enables the stop_accessing_security_scoped_resource command without any pre-configured scope." + }, + { + "description": "Enables the truncate command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-truncate", + "markdownDescription": "Enables the truncate command without any pre-configured scope." + }, + { + "description": "Enables the unwatch command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-unwatch", + "markdownDescription": "Enables the unwatch command without any pre-configured scope." + }, + { + "description": "Enables the watch command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-watch", + "markdownDescription": "Enables the watch command without any pre-configured scope." + }, + { + "description": "Enables the write command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-write", + "markdownDescription": "Enables the write command without any pre-configured scope." + }, + { + "description": "Enables the write_file command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-write-file", + "markdownDescription": "Enables the write_file command without any pre-configured scope." + }, + { + "description": "Enables the write_text_file command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-write-text-file", + "markdownDescription": "Enables the write_text_file command without any pre-configured scope." + }, + { + "description": "This permissions allows to create the application specific directories.\n", + "type": "string", + "const": "fs:create-app-specific-dirs", + "markdownDescription": "This permissions allows to create the application specific directories.\n" + }, + { + "description": "Denies the copy_file command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-copy-file", + "markdownDescription": "Denies the copy_file command without any pre-configured scope." + }, + { + "description": "Denies the create command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-create", + "markdownDescription": "Denies the create command without any pre-configured scope." + }, + { + "description": "Denies the exists command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-exists", + "markdownDescription": "Denies the exists command without any pre-configured scope." + }, + { + "description": "Denies the fstat command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-fstat", + "markdownDescription": "Denies the fstat command without any pre-configured scope." + }, + { + "description": "Denies the ftruncate command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-ftruncate", + "markdownDescription": "Denies the ftruncate command without any pre-configured scope." + }, + { + "description": "Denies the lstat command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-lstat", + "markdownDescription": "Denies the lstat command without any pre-configured scope." + }, + { + "description": "Denies the mkdir command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-mkdir", + "markdownDescription": "Denies the mkdir command without any pre-configured scope." + }, + { + "description": "Denies the open command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-open", + "markdownDescription": "Denies the open command without any pre-configured scope." + }, + { + "description": "Denies the read command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-read", + "markdownDescription": "Denies the read command without any pre-configured scope." + }, + { + "description": "Denies the read_dir command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-read-dir", + "markdownDescription": "Denies the read_dir command without any pre-configured scope." + }, + { + "description": "Denies the read_file command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-read-file", + "markdownDescription": "Denies the read_file command without any pre-configured scope." + }, + { + "description": "Denies the read_text_file command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-read-text-file", + "markdownDescription": "Denies the read_text_file command without any pre-configured scope." + }, + { + "description": "Denies the read_text_file_lines command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-read-text-file-lines", + "markdownDescription": "Denies the read_text_file_lines command without any pre-configured scope." + }, + { + "description": "Denies the read_text_file_lines_next command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-read-text-file-lines-next", + "markdownDescription": "Denies the read_text_file_lines_next command without any pre-configured scope." + }, + { + "description": "Denies the remove command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-remove", + "markdownDescription": "Denies the remove command without any pre-configured scope." + }, + { + "description": "Denies the rename command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-rename", + "markdownDescription": "Denies the rename command without any pre-configured scope." + }, + { + "description": "Denies the seek command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-seek", + "markdownDescription": "Denies the seek command without any pre-configured scope." + }, + { + "description": "Denies the size command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-size", + "markdownDescription": "Denies the size command without any pre-configured scope." + }, + { + "description": "Denies the start_accessing_security_scoped_resource command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-start-accessing-security-scoped-resource", + "markdownDescription": "Denies the start_accessing_security_scoped_resource command without any pre-configured scope." + }, + { + "description": "Denies the stat command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-stat", + "markdownDescription": "Denies the stat command without any pre-configured scope." + }, + { + "description": "Denies the stop_accessing_security_scoped_resource command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-stop-accessing-security-scoped-resource", + "markdownDescription": "Denies the stop_accessing_security_scoped_resource command without any pre-configured scope." + }, + { + "description": "Denies the truncate command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-truncate", + "markdownDescription": "Denies the truncate command without any pre-configured scope." + }, + { + "description": "Denies the unwatch command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-unwatch", + "markdownDescription": "Denies the unwatch command without any pre-configured scope." + }, + { + "description": "Denies the watch command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-watch", + "markdownDescription": "Denies the watch command without any pre-configured scope." + }, + { + "description": "This denies read access to the\n`$APPLOCALDATA` folder on linux as the webview data and configuration values are stored here.\nAllowing access can lead to sensitive information disclosure and should be well considered.", + "type": "string", + "const": "fs:deny-webview-data-linux", + "markdownDescription": "This denies read access to the\n`$APPLOCALDATA` folder on linux as the webview data and configuration values are stored here.\nAllowing access can lead to sensitive information disclosure and should be well considered." + }, + { + "description": "This denies read access to the\n`$APPLOCALDATA/EBWebView` folder on windows as the webview data and configuration values are stored here.\nAllowing access can lead to sensitive information disclosure and should be well considered.", + "type": "string", + "const": "fs:deny-webview-data-windows", + "markdownDescription": "This denies read access to the\n`$APPLOCALDATA/EBWebView` folder on windows as the webview data and configuration values are stored here.\nAllowing access can lead to sensitive information disclosure and should be well considered." + }, + { + "description": "Denies the write command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-write", + "markdownDescription": "Denies the write command without any pre-configured scope." + }, + { + "description": "Denies the write_file command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-write-file", + "markdownDescription": "Denies the write_file command without any pre-configured scope." + }, + { + "description": "Denies the write_text_file command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-write-text-file", + "markdownDescription": "Denies the write_text_file command without any pre-configured scope." + }, + { + "description": "This enables all read related commands without any pre-configured accessible paths.", + "type": "string", + "const": "fs:read-all", + "markdownDescription": "This enables all read related commands without any pre-configured accessible paths." + }, + { + "description": "This permission allows recursive read functionality on the application\nspecific base directories. \n", + "type": "string", + "const": "fs:read-app-specific-dirs-recursive", + "markdownDescription": "This permission allows recursive read functionality on the application\nspecific base directories. \n" + }, + { + "description": "This enables directory read and file metadata related commands without any pre-configured accessible paths.", + "type": "string", + "const": "fs:read-dirs", + "markdownDescription": "This enables directory read and file metadata related commands without any pre-configured accessible paths." + }, + { + "description": "This enables file read related commands without any pre-configured accessible paths.", + "type": "string", + "const": "fs:read-files", + "markdownDescription": "This enables file read related commands without any pre-configured accessible paths." + }, + { + "description": "This enables all index or metadata related commands without any pre-configured accessible paths.", + "type": "string", + "const": "fs:read-meta", + "markdownDescription": "This enables all index or metadata related commands without any pre-configured accessible paths." + }, + { + "description": "An empty permission you can use to modify the global scope.\n\n## Example\n\n```json\n{\n \"identifier\": \"read-documents\",\n \"windows\": [\"main\"],\n \"permissions\": [\n \"fs:allow-read\",\n {\n \"identifier\": \"fs:scope\",\n \"allow\": [\n \"$APPDATA/documents/**/*\"\n ],\n \"deny\": [\n \"$APPDATA/documents/secret.txt\"\n ]\n }\n ]\n}\n```\n", + "type": "string", + "const": "fs:scope", + "markdownDescription": "An empty permission you can use to modify the global scope.\n\n## Example\n\n```json\n{\n \"identifier\": \"read-documents\",\n \"windows\": [\"main\"],\n \"permissions\": [\n \"fs:allow-read\",\n {\n \"identifier\": \"fs:scope\",\n \"allow\": [\n \"$APPDATA/documents/**/*\"\n ],\n \"deny\": [\n \"$APPDATA/documents/secret.txt\"\n ]\n }\n ]\n}\n```\n" + }, + { + "description": "This scope permits access to all files and list content of top level directories in the application folders.", + "type": "string", + "const": "fs:scope-app", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the application folders." + }, + { + "description": "This scope permits to list all files and folders in the application directories.", + "type": "string", + "const": "fs:scope-app-index", + "markdownDescription": "This scope permits to list all files and folders in the application directories." + }, + { + "description": "This scope permits recursive access to the complete application folders, including sub directories and files.", + "type": "string", + "const": "fs:scope-app-recursive", + "markdownDescription": "This scope permits recursive access to the complete application folders, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$APPCACHE` folder.", + "type": "string", + "const": "fs:scope-appcache", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$APPCACHE` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$APPCACHE`folder.", + "type": "string", + "const": "fs:scope-appcache-index", + "markdownDescription": "This scope permits to list all files and folders in the `$APPCACHE`folder." + }, + { + "description": "This scope permits recursive access to the complete `$APPCACHE` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-appcache-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$APPCACHE` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$APPCONFIG` folder.", + "type": "string", + "const": "fs:scope-appconfig", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$APPCONFIG` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$APPCONFIG`folder.", + "type": "string", + "const": "fs:scope-appconfig-index", + "markdownDescription": "This scope permits to list all files and folders in the `$APPCONFIG`folder." + }, + { + "description": "This scope permits recursive access to the complete `$APPCONFIG` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-appconfig-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$APPCONFIG` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$APPDATA` folder.", + "type": "string", + "const": "fs:scope-appdata", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$APPDATA` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$APPDATA`folder.", + "type": "string", + "const": "fs:scope-appdata-index", + "markdownDescription": "This scope permits to list all files and folders in the `$APPDATA`folder." + }, + { + "description": "This scope permits recursive access to the complete `$APPDATA` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-appdata-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$APPDATA` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$APPLOCALDATA` folder.", + "type": "string", + "const": "fs:scope-applocaldata", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$APPLOCALDATA` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$APPLOCALDATA`folder.", + "type": "string", + "const": "fs:scope-applocaldata-index", + "markdownDescription": "This scope permits to list all files and folders in the `$APPLOCALDATA`folder." + }, + { + "description": "This scope permits recursive access to the complete `$APPLOCALDATA` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-applocaldata-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$APPLOCALDATA` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$APPLOG` folder.", + "type": "string", + "const": "fs:scope-applog", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$APPLOG` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$APPLOG`folder.", + "type": "string", + "const": "fs:scope-applog-index", + "markdownDescription": "This scope permits to list all files and folders in the `$APPLOG`folder." + }, + { + "description": "This scope permits recursive access to the complete `$APPLOG` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-applog-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$APPLOG` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$AUDIO` folder.", + "type": "string", + "const": "fs:scope-audio", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$AUDIO` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$AUDIO`folder.", + "type": "string", + "const": "fs:scope-audio-index", + "markdownDescription": "This scope permits to list all files and folders in the `$AUDIO`folder." + }, + { + "description": "This scope permits recursive access to the complete `$AUDIO` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-audio-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$AUDIO` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$CACHE` folder.", + "type": "string", + "const": "fs:scope-cache", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$CACHE` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$CACHE`folder.", + "type": "string", + "const": "fs:scope-cache-index", + "markdownDescription": "This scope permits to list all files and folders in the `$CACHE`folder." + }, + { + "description": "This scope permits recursive access to the complete `$CACHE` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-cache-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$CACHE` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$CONFIG` folder.", + "type": "string", + "const": "fs:scope-config", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$CONFIG` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$CONFIG`folder.", + "type": "string", + "const": "fs:scope-config-index", + "markdownDescription": "This scope permits to list all files and folders in the `$CONFIG`folder." + }, + { + "description": "This scope permits recursive access to the complete `$CONFIG` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-config-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$CONFIG` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$DATA` folder.", + "type": "string", + "const": "fs:scope-data", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$DATA` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$DATA`folder.", + "type": "string", + "const": "fs:scope-data-index", + "markdownDescription": "This scope permits to list all files and folders in the `$DATA`folder." + }, + { + "description": "This scope permits recursive access to the complete `$DATA` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-data-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$DATA` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$DESKTOP` folder.", + "type": "string", + "const": "fs:scope-desktop", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$DESKTOP` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$DESKTOP`folder.", + "type": "string", + "const": "fs:scope-desktop-index", + "markdownDescription": "This scope permits to list all files and folders in the `$DESKTOP`folder." + }, + { + "description": "This scope permits recursive access to the complete `$DESKTOP` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-desktop-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$DESKTOP` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$DOCUMENT` folder.", + "type": "string", + "const": "fs:scope-document", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$DOCUMENT` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$DOCUMENT`folder.", + "type": "string", + "const": "fs:scope-document-index", + "markdownDescription": "This scope permits to list all files and folders in the `$DOCUMENT`folder." + }, + { + "description": "This scope permits recursive access to the complete `$DOCUMENT` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-document-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$DOCUMENT` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$DOWNLOAD` folder.", + "type": "string", + "const": "fs:scope-download", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$DOWNLOAD` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$DOWNLOAD`folder.", + "type": "string", + "const": "fs:scope-download-index", + "markdownDescription": "This scope permits to list all files and folders in the `$DOWNLOAD`folder." + }, + { + "description": "This scope permits recursive access to the complete `$DOWNLOAD` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-download-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$DOWNLOAD` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$EXE` folder.", + "type": "string", + "const": "fs:scope-exe", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$EXE` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$EXE`folder.", + "type": "string", + "const": "fs:scope-exe-index", + "markdownDescription": "This scope permits to list all files and folders in the `$EXE`folder." + }, + { + "description": "This scope permits recursive access to the complete `$EXE` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-exe-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$EXE` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$FONT` folder.", + "type": "string", + "const": "fs:scope-font", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$FONT` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$FONT`folder.", + "type": "string", + "const": "fs:scope-font-index", + "markdownDescription": "This scope permits to list all files and folders in the `$FONT`folder." + }, + { + "description": "This scope permits recursive access to the complete `$FONT` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-font-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$FONT` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$HOME` folder.", + "type": "string", + "const": "fs:scope-home", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$HOME` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$HOME`folder.", + "type": "string", + "const": "fs:scope-home-index", + "markdownDescription": "This scope permits to list all files and folders in the `$HOME`folder." + }, + { + "description": "This scope permits recursive access to the complete `$HOME` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-home-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$HOME` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$LOCALDATA` folder.", + "type": "string", + "const": "fs:scope-localdata", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$LOCALDATA` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$LOCALDATA`folder.", + "type": "string", + "const": "fs:scope-localdata-index", + "markdownDescription": "This scope permits to list all files and folders in the `$LOCALDATA`folder." + }, + { + "description": "This scope permits recursive access to the complete `$LOCALDATA` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-localdata-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$LOCALDATA` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$LOG` folder.", + "type": "string", + "const": "fs:scope-log", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$LOG` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$LOG`folder.", + "type": "string", + "const": "fs:scope-log-index", + "markdownDescription": "This scope permits to list all files and folders in the `$LOG`folder." + }, + { + "description": "This scope permits recursive access to the complete `$LOG` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-log-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$LOG` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$PICTURE` folder.", + "type": "string", + "const": "fs:scope-picture", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$PICTURE` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$PICTURE`folder.", + "type": "string", + "const": "fs:scope-picture-index", + "markdownDescription": "This scope permits to list all files and folders in the `$PICTURE`folder." + }, + { + "description": "This scope permits recursive access to the complete `$PICTURE` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-picture-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$PICTURE` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$PUBLIC` folder.", + "type": "string", + "const": "fs:scope-public", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$PUBLIC` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$PUBLIC`folder.", + "type": "string", + "const": "fs:scope-public-index", + "markdownDescription": "This scope permits to list all files and folders in the `$PUBLIC`folder." + }, + { + "description": "This scope permits recursive access to the complete `$PUBLIC` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-public-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$PUBLIC` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$RESOURCE` folder.", + "type": "string", + "const": "fs:scope-resource", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$RESOURCE` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$RESOURCE`folder.", + "type": "string", + "const": "fs:scope-resource-index", + "markdownDescription": "This scope permits to list all files and folders in the `$RESOURCE`folder." + }, + { + "description": "This scope permits recursive access to the complete `$RESOURCE` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-resource-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$RESOURCE` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$RUNTIME` folder.", + "type": "string", + "const": "fs:scope-runtime", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$RUNTIME` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$RUNTIME`folder.", + "type": "string", + "const": "fs:scope-runtime-index", + "markdownDescription": "This scope permits to list all files and folders in the `$RUNTIME`folder." + }, + { + "description": "This scope permits recursive access to the complete `$RUNTIME` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-runtime-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$RUNTIME` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$TEMP` folder.", + "type": "string", + "const": "fs:scope-temp", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$TEMP` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$TEMP`folder.", + "type": "string", + "const": "fs:scope-temp-index", + "markdownDescription": "This scope permits to list all files and folders in the `$TEMP`folder." + }, + { + "description": "This scope permits recursive access to the complete `$TEMP` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-temp-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$TEMP` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$TEMPLATE` folder.", + "type": "string", + "const": "fs:scope-template", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$TEMPLATE` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$TEMPLATE`folder.", + "type": "string", + "const": "fs:scope-template-index", + "markdownDescription": "This scope permits to list all files and folders in the `$TEMPLATE`folder." + }, + { + "description": "This scope permits recursive access to the complete `$TEMPLATE` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-template-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$TEMPLATE` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$VIDEO` folder.", + "type": "string", + "const": "fs:scope-video", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$VIDEO` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$VIDEO`folder.", + "type": "string", + "const": "fs:scope-video-index", + "markdownDescription": "This scope permits to list all files and folders in the `$VIDEO`folder." + }, + { + "description": "This scope permits recursive access to the complete `$VIDEO` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-video-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$VIDEO` folder, including sub directories and files." + }, + { + "description": "This enables all write related commands without any pre-configured accessible paths.", + "type": "string", + "const": "fs:write-all", + "markdownDescription": "This enables all write related commands without any pre-configured accessible paths." + }, + { + "description": "This enables all file write related commands without any pre-configured accessible paths.", + "type": "string", + "const": "fs:write-files", + "markdownDescription": "This enables all file write related commands without any pre-configured accessible paths." + } + ] + } + } + }, + "then": { + "properties": { + "allow": { + "items": { + "title": "FsScopeEntry", + "description": "FS scope entry.", + "anyOf": [ + { + "description": "A path that can be accessed by the webview when using the fs APIs. FS scope path pattern.\n\nThe pattern can start with a variable that resolves to a system base directory. The variables are: `$AUDIO`, `$CACHE`, `$CONFIG`, `$DATA`, `$LOCALDATA`, `$DESKTOP`, `$DOCUMENT`, `$DOWNLOAD`, `$EXE`, `$FONT`, `$HOME`, `$PICTURE`, `$PUBLIC`, `$RUNTIME`, `$TEMPLATE`, `$VIDEO`, `$RESOURCE`, `$APP`, `$LOG`, `$TEMP`, `$APPCONFIG`, `$APPDATA`, `$APPLOCALDATA`, `$APPCACHE`, `$APPLOG`.", + "type": "string" + }, + { + "type": "object", + "required": [ + "path" + ], + "properties": { + "path": { + "description": "A path that can be accessed by the webview when using the fs APIs.\n\nThe pattern can start with a variable that resolves to a system base directory. The variables are: `$AUDIO`, `$CACHE`, `$CONFIG`, `$DATA`, `$LOCALDATA`, `$DESKTOP`, `$DOCUMENT`, `$DOWNLOAD`, `$EXE`, `$FONT`, `$HOME`, `$PICTURE`, `$PUBLIC`, `$RUNTIME`, `$TEMPLATE`, `$VIDEO`, `$RESOURCE`, `$APP`, `$LOG`, `$TEMP`, `$APPCONFIG`, `$APPDATA`, `$APPLOCALDATA`, `$APPCACHE`, `$APPLOG`.", + "type": "string" + } + } + } + ] + } + }, + "deny": { + "items": { + "title": "FsScopeEntry", + "description": "FS scope entry.", + "anyOf": [ + { + "description": "A path that can be accessed by the webview when using the fs APIs. FS scope path pattern.\n\nThe pattern can start with a variable that resolves to a system base directory. The variables are: `$AUDIO`, `$CACHE`, `$CONFIG`, `$DATA`, `$LOCALDATA`, `$DESKTOP`, `$DOCUMENT`, `$DOWNLOAD`, `$EXE`, `$FONT`, `$HOME`, `$PICTURE`, `$PUBLIC`, `$RUNTIME`, `$TEMPLATE`, `$VIDEO`, `$RESOURCE`, `$APP`, `$LOG`, `$TEMP`, `$APPCONFIG`, `$APPDATA`, `$APPLOCALDATA`, `$APPCACHE`, `$APPLOG`.", + "type": "string" + }, + { + "type": "object", + "required": [ + "path" + ], + "properties": { + "path": { + "description": "A path that can be accessed by the webview when using the fs APIs.\n\nThe pattern can start with a variable that resolves to a system base directory. The variables are: `$AUDIO`, `$CACHE`, `$CONFIG`, `$DATA`, `$LOCALDATA`, `$DESKTOP`, `$DOCUMENT`, `$DOWNLOAD`, `$EXE`, `$FONT`, `$HOME`, `$PICTURE`, `$PUBLIC`, `$RUNTIME`, `$TEMPLATE`, `$VIDEO`, `$RESOURCE`, `$APP`, `$LOG`, `$TEMP`, `$APPCONFIG`, `$APPDATA`, `$APPLOCALDATA`, `$APPCACHE`, `$APPLOG`.", + "type": "string" + } + } + } + ] + } + } + } + }, + "properties": { + "identifier": { + "description": "Identifier of the permission or permission set.", + "allOf": [ + { + "$ref": "#/definitions/Identifier" + } + ] + } + } + }, + { + "if": { + "properties": { + "identifier": { + "anyOf": [ + { + "description": "This permission set configures which\nshell functionality is exposed by default.\n\n#### Granted Permissions\n\nIt allows to use the `open` functionality with a reasonable\nscope pre-configured. It will allow opening `http(s)://`,\n`tel:` and `mailto:` links.\n\n#### This default permission set includes:\n\n- `allow-open`", + "type": "string", + "const": "shell:default", + "markdownDescription": "This permission set configures which\nshell functionality is exposed by default.\n\n#### Granted Permissions\n\nIt allows to use the `open` functionality with a reasonable\nscope pre-configured. It will allow opening `http(s)://`,\n`tel:` and `mailto:` links.\n\n#### This default permission set includes:\n\n- `allow-open`" + }, + { + "description": "Enables the execute command without any pre-configured scope.", + "type": "string", + "const": "shell:allow-execute", + "markdownDescription": "Enables the execute command without any pre-configured scope." + }, + { + "description": "Enables the kill command without any pre-configured scope.", + "type": "string", + "const": "shell:allow-kill", + "markdownDescription": "Enables the kill command without any pre-configured scope." + }, + { + "description": "Enables the open command without any pre-configured scope.", + "type": "string", + "const": "shell:allow-open", + "markdownDescription": "Enables the open command without any pre-configured scope." + }, + { + "description": "Enables the spawn command without any pre-configured scope.", + "type": "string", + "const": "shell:allow-spawn", + "markdownDescription": "Enables the spawn command without any pre-configured scope." + }, + { + "description": "Enables the stdin_write command without any pre-configured scope.", + "type": "string", + "const": "shell:allow-stdin-write", + "markdownDescription": "Enables the stdin_write command without any pre-configured scope." + }, + { + "description": "Denies the execute command without any pre-configured scope.", + "type": "string", + "const": "shell:deny-execute", + "markdownDescription": "Denies the execute command without any pre-configured scope." + }, + { + "description": "Denies the kill command without any pre-configured scope.", + "type": "string", + "const": "shell:deny-kill", + "markdownDescription": "Denies the kill command without any pre-configured scope." + }, + { + "description": "Denies the open command without any pre-configured scope.", + "type": "string", + "const": "shell:deny-open", + "markdownDescription": "Denies the open command without any pre-configured scope." + }, + { + "description": "Denies the spawn command without any pre-configured scope.", + "type": "string", + "const": "shell:deny-spawn", + "markdownDescription": "Denies the spawn command without any pre-configured scope." + }, + { + "description": "Denies the stdin_write command without any pre-configured scope.", + "type": "string", + "const": "shell:deny-stdin-write", + "markdownDescription": "Denies the stdin_write command without any pre-configured scope." + } + ] + } + } + }, + "then": { + "properties": { + "allow": { + "items": { + "title": "ShellScopeEntry", + "description": "Shell scope entry.", + "anyOf": [ + { + "type": "object", + "required": [ + "cmd", + "name" + ], + "properties": { + "args": { + "description": "The allowed arguments for the command execution.", + "allOf": [ + { + "$ref": "#/definitions/ShellScopeEntryAllowedArgs" + } + ] + }, + "cmd": { + "description": "The command name. It can start with a variable that resolves to a system base directory. The variables are: `$AUDIO`, `$CACHE`, `$CONFIG`, `$DATA`, `$LOCALDATA`, `$DESKTOP`, `$DOCUMENT`, `$DOWNLOAD`, `$EXE`, `$FONT`, `$HOME`, `$PICTURE`, `$PUBLIC`, `$RUNTIME`, `$TEMPLATE`, `$VIDEO`, `$RESOURCE`, `$LOG`, `$TEMP`, `$APPCONFIG`, `$APPDATA`, `$APPLOCALDATA`, `$APPCACHE`, `$APPLOG`.", + "type": "string" + }, + "name": { + "description": "The name for this allowed shell command configuration.\n\nThis name will be used inside of the webview API to call this command along with any specified arguments.", + "type": "string" + } + }, + "additionalProperties": false + }, + { + "type": "object", + "required": [ + "name", + "sidecar" + ], + "properties": { + "args": { + "description": "The allowed arguments for the command execution.", + "allOf": [ + { + "$ref": "#/definitions/ShellScopeEntryAllowedArgs" + } + ] + }, + "name": { + "description": "The name for this allowed shell command configuration.\n\nThis name will be used inside of the webview API to call this command along with any specified arguments.", + "type": "string" + }, + "sidecar": { + "description": "If this command is a sidecar command.", + "type": "boolean" + } + }, + "additionalProperties": false + } + ] + } + }, + "deny": { + "items": { + "title": "ShellScopeEntry", + "description": "Shell scope entry.", + "anyOf": [ + { + "type": "object", + "required": [ + "cmd", + "name" + ], + "properties": { + "args": { + "description": "The allowed arguments for the command execution.", + "allOf": [ + { + "$ref": "#/definitions/ShellScopeEntryAllowedArgs" + } + ] + }, + "cmd": { + "description": "The command name. It can start with a variable that resolves to a system base directory. The variables are: `$AUDIO`, `$CACHE`, `$CONFIG`, `$DATA`, `$LOCALDATA`, `$DESKTOP`, `$DOCUMENT`, `$DOWNLOAD`, `$EXE`, `$FONT`, `$HOME`, `$PICTURE`, `$PUBLIC`, `$RUNTIME`, `$TEMPLATE`, `$VIDEO`, `$RESOURCE`, `$LOG`, `$TEMP`, `$APPCONFIG`, `$APPDATA`, `$APPLOCALDATA`, `$APPCACHE`, `$APPLOG`.", + "type": "string" + }, + "name": { + "description": "The name for this allowed shell command configuration.\n\nThis name will be used inside of the webview API to call this command along with any specified arguments.", + "type": "string" + } + }, + "additionalProperties": false + }, + { + "type": "object", + "required": [ + "name", + "sidecar" + ], + "properties": { + "args": { + "description": "The allowed arguments for the command execution.", + "allOf": [ + { + "$ref": "#/definitions/ShellScopeEntryAllowedArgs" + } + ] + }, + "name": { + "description": "The name for this allowed shell command configuration.\n\nThis name will be used inside of the webview API to call this command along with any specified arguments.", + "type": "string" + }, + "sidecar": { + "description": "If this command is a sidecar command.", + "type": "boolean" + } + }, + "additionalProperties": false + } + ] + } + } + } + }, + "properties": { + "identifier": { + "description": "Identifier of the permission or permission set.", + "allOf": [ + { + "$ref": "#/definitions/Identifier" + } + ] + } + } + }, + { + "properties": { + "identifier": { + "description": "Identifier of the permission or permission set.", + "allOf": [ + { + "$ref": "#/definitions/Identifier" + } + ] + }, + "allow": { + "description": "Data that defines what is allowed by the scope.", + "type": [ + "array", + "null" + ], + "items": { + "$ref": "#/definitions/Value" + } + }, + "deny": { + "description": "Data that defines what is denied by the scope. This should be prioritized by validation logic.", + "type": [ + "array", + "null" + ], + "items": { + "$ref": "#/definitions/Value" + } + } + } + } + ], + "required": [ + "identifier" + ] + } + ] + }, + "Identifier": { + "description": "Permission identifier", + "oneOf": [ + { + "description": "Default core plugins set.\n#### This default permission set includes:\n\n- `core:path:default`\n- `core:event:default`\n- `core:window:default`\n- `core:webview:default`\n- `core:app:default`\n- `core:image:default`\n- `core:resources:default`\n- `core:menu:default`\n- `core:tray:default`", + "type": "string", + "const": "core:default", + "markdownDescription": "Default core plugins set.\n#### This default permission set includes:\n\n- `core:path:default`\n- `core:event:default`\n- `core:window:default`\n- `core:webview:default`\n- `core:app:default`\n- `core:image:default`\n- `core:resources:default`\n- `core:menu:default`\n- `core:tray:default`" + }, + { + "description": "Default permissions for the plugin.\n#### This default permission set includes:\n\n- `allow-version`\n- `allow-name`\n- `allow-tauri-version`\n- `allow-identifier`\n- `allow-bundle-type`\n- `allow-register-listener`\n- `allow-remove-listener`", + "type": "string", + "const": "core:app:default", + "markdownDescription": "Default permissions for the plugin.\n#### This default permission set includes:\n\n- `allow-version`\n- `allow-name`\n- `allow-tauri-version`\n- `allow-identifier`\n- `allow-bundle-type`\n- `allow-register-listener`\n- `allow-remove-listener`" + }, + { + "description": "Enables the app_hide command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-app-hide", + "markdownDescription": "Enables the app_hide command without any pre-configured scope." + }, + { + "description": "Enables the app_show command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-app-show", + "markdownDescription": "Enables the app_show command without any pre-configured scope." + }, + { + "description": "Enables the bundle_type command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-bundle-type", + "markdownDescription": "Enables the bundle_type command without any pre-configured scope." + }, + { + "description": "Enables the default_window_icon command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-default-window-icon", + "markdownDescription": "Enables the default_window_icon command without any pre-configured scope." + }, + { + "description": "Enables the fetch_data_store_identifiers command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-fetch-data-store-identifiers", + "markdownDescription": "Enables the fetch_data_store_identifiers command without any pre-configured scope." + }, + { + "description": "Enables the identifier command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-identifier", + "markdownDescription": "Enables the identifier command without any pre-configured scope." + }, + { + "description": "Enables the name command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-name", + "markdownDescription": "Enables the name command without any pre-configured scope." + }, + { + "description": "Enables the register_listener command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-register-listener", + "markdownDescription": "Enables the register_listener command without any pre-configured scope." + }, + { + "description": "Enables the remove_data_store command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-remove-data-store", + "markdownDescription": "Enables the remove_data_store command without any pre-configured scope." + }, + { + "description": "Enables the remove_listener command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-remove-listener", + "markdownDescription": "Enables the remove_listener command without any pre-configured scope." + }, + { + "description": "Enables the set_app_theme command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-set-app-theme", + "markdownDescription": "Enables the set_app_theme command without any pre-configured scope." + }, + { + "description": "Enables the set_dock_visibility command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-set-dock-visibility", + "markdownDescription": "Enables the set_dock_visibility command without any pre-configured scope." + }, + { + "description": "Enables the tauri_version command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-tauri-version", + "markdownDescription": "Enables the tauri_version command without any pre-configured scope." + }, + { + "description": "Enables the version command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-version", + "markdownDescription": "Enables the version command without any pre-configured scope." + }, + { + "description": "Denies the app_hide command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-app-hide", + "markdownDescription": "Denies the app_hide command without any pre-configured scope." + }, + { + "description": "Denies the app_show command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-app-show", + "markdownDescription": "Denies the app_show command without any pre-configured scope." + }, + { + "description": "Denies the bundle_type command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-bundle-type", + "markdownDescription": "Denies the bundle_type command without any pre-configured scope." + }, + { + "description": "Denies the default_window_icon command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-default-window-icon", + "markdownDescription": "Denies the default_window_icon command without any pre-configured scope." + }, + { + "description": "Denies the fetch_data_store_identifiers command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-fetch-data-store-identifiers", + "markdownDescription": "Denies the fetch_data_store_identifiers command without any pre-configured scope." + }, + { + "description": "Denies the identifier command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-identifier", + "markdownDescription": "Denies the identifier command without any pre-configured scope." + }, + { + "description": "Denies the name command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-name", + "markdownDescription": "Denies the name command without any pre-configured scope." + }, + { + "description": "Denies the register_listener command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-register-listener", + "markdownDescription": "Denies the register_listener command without any pre-configured scope." + }, + { + "description": "Denies the remove_data_store command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-remove-data-store", + "markdownDescription": "Denies the remove_data_store command without any pre-configured scope." + }, + { + "description": "Denies the remove_listener command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-remove-listener", + "markdownDescription": "Denies the remove_listener command without any pre-configured scope." + }, + { + "description": "Denies the set_app_theme command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-set-app-theme", + "markdownDescription": "Denies the set_app_theme command without any pre-configured scope." + }, + { + "description": "Denies the set_dock_visibility command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-set-dock-visibility", + "markdownDescription": "Denies the set_dock_visibility command without any pre-configured scope." + }, + { + "description": "Denies the tauri_version command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-tauri-version", + "markdownDescription": "Denies the tauri_version command without any pre-configured scope." + }, + { + "description": "Denies the version command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-version", + "markdownDescription": "Denies the version command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-listen`\n- `allow-unlisten`\n- `allow-emit`\n- `allow-emit-to`", + "type": "string", + "const": "core:event:default", + "markdownDescription": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-listen`\n- `allow-unlisten`\n- `allow-emit`\n- `allow-emit-to`" + }, + { + "description": "Enables the emit command without any pre-configured scope.", + "type": "string", + "const": "core:event:allow-emit", + "markdownDescription": "Enables the emit command without any pre-configured scope." + }, + { + "description": "Enables the emit_to command without any pre-configured scope.", + "type": "string", + "const": "core:event:allow-emit-to", + "markdownDescription": "Enables the emit_to command without any pre-configured scope." + }, + { + "description": "Enables the listen command without any pre-configured scope.", + "type": "string", + "const": "core:event:allow-listen", + "markdownDescription": "Enables the listen command without any pre-configured scope." + }, + { + "description": "Enables the unlisten command without any pre-configured scope.", + "type": "string", + "const": "core:event:allow-unlisten", + "markdownDescription": "Enables the unlisten command without any pre-configured scope." + }, + { + "description": "Denies the emit command without any pre-configured scope.", + "type": "string", + "const": "core:event:deny-emit", + "markdownDescription": "Denies the emit command without any pre-configured scope." + }, + { + "description": "Denies the emit_to command without any pre-configured scope.", + "type": "string", + "const": "core:event:deny-emit-to", + "markdownDescription": "Denies the emit_to command without any pre-configured scope." + }, + { + "description": "Denies the listen command without any pre-configured scope.", + "type": "string", + "const": "core:event:deny-listen", + "markdownDescription": "Denies the listen command without any pre-configured scope." + }, + { + "description": "Denies the unlisten command without any pre-configured scope.", + "type": "string", + "const": "core:event:deny-unlisten", + "markdownDescription": "Denies the unlisten command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-new`\n- `allow-from-bytes`\n- `allow-from-path`\n- `allow-rgba`\n- `allow-size`", + "type": "string", + "const": "core:image:default", + "markdownDescription": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-new`\n- `allow-from-bytes`\n- `allow-from-path`\n- `allow-rgba`\n- `allow-size`" + }, + { + "description": "Enables the from_bytes command without any pre-configured scope.", + "type": "string", + "const": "core:image:allow-from-bytes", + "markdownDescription": "Enables the from_bytes command without any pre-configured scope." + }, + { + "description": "Enables the from_path command without any pre-configured scope.", + "type": "string", + "const": "core:image:allow-from-path", + "markdownDescription": "Enables the from_path command without any pre-configured scope." + }, + { + "description": "Enables the new command without any pre-configured scope.", + "type": "string", + "const": "core:image:allow-new", + "markdownDescription": "Enables the new command without any pre-configured scope." + }, + { + "description": "Enables the rgba command without any pre-configured scope.", + "type": "string", + "const": "core:image:allow-rgba", + "markdownDescription": "Enables the rgba command without any pre-configured scope." + }, + { + "description": "Enables the size command without any pre-configured scope.", + "type": "string", + "const": "core:image:allow-size", + "markdownDescription": "Enables the size command without any pre-configured scope." + }, + { + "description": "Denies the from_bytes command without any pre-configured scope.", + "type": "string", + "const": "core:image:deny-from-bytes", + "markdownDescription": "Denies the from_bytes command without any pre-configured scope." + }, + { + "description": "Denies the from_path command without any pre-configured scope.", + "type": "string", + "const": "core:image:deny-from-path", + "markdownDescription": "Denies the from_path command without any pre-configured scope." + }, + { + "description": "Denies the new command without any pre-configured scope.", + "type": "string", + "const": "core:image:deny-new", + "markdownDescription": "Denies the new command without any pre-configured scope." + }, + { + "description": "Denies the rgba command without any pre-configured scope.", + "type": "string", + "const": "core:image:deny-rgba", + "markdownDescription": "Denies the rgba command without any pre-configured scope." + }, + { + "description": "Denies the size command without any pre-configured scope.", + "type": "string", + "const": "core:image:deny-size", + "markdownDescription": "Denies the size command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-new`\n- `allow-append`\n- `allow-prepend`\n- `allow-insert`\n- `allow-remove`\n- `allow-remove-at`\n- `allow-items`\n- `allow-get`\n- `allow-popup`\n- `allow-create-default`\n- `allow-set-as-app-menu`\n- `allow-set-as-window-menu`\n- `allow-text`\n- `allow-set-text`\n- `allow-is-enabled`\n- `allow-set-enabled`\n- `allow-set-accelerator`\n- `allow-set-as-windows-menu-for-nsapp`\n- `allow-set-as-help-menu-for-nsapp`\n- `allow-is-checked`\n- `allow-set-checked`\n- `allow-set-icon`", + "type": "string", + "const": "core:menu:default", + "markdownDescription": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-new`\n- `allow-append`\n- `allow-prepend`\n- `allow-insert`\n- `allow-remove`\n- `allow-remove-at`\n- `allow-items`\n- `allow-get`\n- `allow-popup`\n- `allow-create-default`\n- `allow-set-as-app-menu`\n- `allow-set-as-window-menu`\n- `allow-text`\n- `allow-set-text`\n- `allow-is-enabled`\n- `allow-set-enabled`\n- `allow-set-accelerator`\n- `allow-set-as-windows-menu-for-nsapp`\n- `allow-set-as-help-menu-for-nsapp`\n- `allow-is-checked`\n- `allow-set-checked`\n- `allow-set-icon`" + }, + { + "description": "Enables the append command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-append", + "markdownDescription": "Enables the append command without any pre-configured scope." + }, + { + "description": "Enables the create_default command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-create-default", + "markdownDescription": "Enables the create_default command without any pre-configured scope." + }, + { + "description": "Enables the get command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-get", + "markdownDescription": "Enables the get command without any pre-configured scope." + }, + { + "description": "Enables the insert command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-insert", + "markdownDescription": "Enables the insert command without any pre-configured scope." + }, + { + "description": "Enables the is_checked command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-is-checked", + "markdownDescription": "Enables the is_checked command without any pre-configured scope." + }, + { + "description": "Enables the is_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-is-enabled", + "markdownDescription": "Enables the is_enabled command without any pre-configured scope." + }, + { + "description": "Enables the items command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-items", + "markdownDescription": "Enables the items command without any pre-configured scope." + }, + { + "description": "Enables the new command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-new", + "markdownDescription": "Enables the new command without any pre-configured scope." + }, + { + "description": "Enables the popup command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-popup", + "markdownDescription": "Enables the popup command without any pre-configured scope." + }, + { + "description": "Enables the prepend command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-prepend", + "markdownDescription": "Enables the prepend command without any pre-configured scope." + }, + { + "description": "Enables the remove command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-remove", + "markdownDescription": "Enables the remove command without any pre-configured scope." + }, + { + "description": "Enables the remove_at command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-remove-at", + "markdownDescription": "Enables the remove_at command without any pre-configured scope." + }, + { + "description": "Enables the set_accelerator command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-accelerator", + "markdownDescription": "Enables the set_accelerator command without any pre-configured scope." + }, + { + "description": "Enables the set_as_app_menu command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-as-app-menu", + "markdownDescription": "Enables the set_as_app_menu command without any pre-configured scope." + }, + { + "description": "Enables the set_as_help_menu_for_nsapp command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-as-help-menu-for-nsapp", + "markdownDescription": "Enables the set_as_help_menu_for_nsapp command without any pre-configured scope." + }, + { + "description": "Enables the set_as_window_menu command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-as-window-menu", + "markdownDescription": "Enables the set_as_window_menu command without any pre-configured scope." + }, + { + "description": "Enables the set_as_windows_menu_for_nsapp command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-as-windows-menu-for-nsapp", + "markdownDescription": "Enables the set_as_windows_menu_for_nsapp command without any pre-configured scope." + }, + { + "description": "Enables the set_checked command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-checked", + "markdownDescription": "Enables the set_checked command without any pre-configured scope." + }, + { + "description": "Enables the set_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-enabled", + "markdownDescription": "Enables the set_enabled command without any pre-configured scope." + }, + { + "description": "Enables the set_icon command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-icon", + "markdownDescription": "Enables the set_icon command without any pre-configured scope." + }, + { + "description": "Enables the set_text command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-text", + "markdownDescription": "Enables the set_text command without any pre-configured scope." + }, + { + "description": "Enables the text command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-text", + "markdownDescription": "Enables the text command without any pre-configured scope." + }, + { + "description": "Denies the append command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-append", + "markdownDescription": "Denies the append command without any pre-configured scope." + }, + { + "description": "Denies the create_default command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-create-default", + "markdownDescription": "Denies the create_default command without any pre-configured scope." + }, + { + "description": "Denies the get command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-get", + "markdownDescription": "Denies the get command without any pre-configured scope." + }, + { + "description": "Denies the insert command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-insert", + "markdownDescription": "Denies the insert command without any pre-configured scope." + }, + { + "description": "Denies the is_checked command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-is-checked", + "markdownDescription": "Denies the is_checked command without any pre-configured scope." + }, + { + "description": "Denies the is_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-is-enabled", + "markdownDescription": "Denies the is_enabled command without any pre-configured scope." + }, + { + "description": "Denies the items command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-items", + "markdownDescription": "Denies the items command without any pre-configured scope." + }, + { + "description": "Denies the new command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-new", + "markdownDescription": "Denies the new command without any pre-configured scope." + }, + { + "description": "Denies the popup command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-popup", + "markdownDescription": "Denies the popup command without any pre-configured scope." + }, + { + "description": "Denies the prepend command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-prepend", + "markdownDescription": "Denies the prepend command without any pre-configured scope." + }, + { + "description": "Denies the remove command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-remove", + "markdownDescription": "Denies the remove command without any pre-configured scope." + }, + { + "description": "Denies the remove_at command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-remove-at", + "markdownDescription": "Denies the remove_at command without any pre-configured scope." + }, + { + "description": "Denies the set_accelerator command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-accelerator", + "markdownDescription": "Denies the set_accelerator command without any pre-configured scope." + }, + { + "description": "Denies the set_as_app_menu command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-as-app-menu", + "markdownDescription": "Denies the set_as_app_menu command without any pre-configured scope." + }, + { + "description": "Denies the set_as_help_menu_for_nsapp command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-as-help-menu-for-nsapp", + "markdownDescription": "Denies the set_as_help_menu_for_nsapp command without any pre-configured scope." + }, + { + "description": "Denies the set_as_window_menu command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-as-window-menu", + "markdownDescription": "Denies the set_as_window_menu command without any pre-configured scope." + }, + { + "description": "Denies the set_as_windows_menu_for_nsapp command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-as-windows-menu-for-nsapp", + "markdownDescription": "Denies the set_as_windows_menu_for_nsapp command without any pre-configured scope." + }, + { + "description": "Denies the set_checked command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-checked", + "markdownDescription": "Denies the set_checked command without any pre-configured scope." + }, + { + "description": "Denies the set_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-enabled", + "markdownDescription": "Denies the set_enabled command without any pre-configured scope." + }, + { + "description": "Denies the set_icon command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-icon", + "markdownDescription": "Denies the set_icon command without any pre-configured scope." + }, + { + "description": "Denies the set_text command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-text", + "markdownDescription": "Denies the set_text command without any pre-configured scope." + }, + { + "description": "Denies the text command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-text", + "markdownDescription": "Denies the text command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-resolve-directory`\n- `allow-resolve`\n- `allow-normalize`\n- `allow-join`\n- `allow-dirname`\n- `allow-extname`\n- `allow-basename`\n- `allow-is-absolute`", + "type": "string", + "const": "core:path:default", + "markdownDescription": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-resolve-directory`\n- `allow-resolve`\n- `allow-normalize`\n- `allow-join`\n- `allow-dirname`\n- `allow-extname`\n- `allow-basename`\n- `allow-is-absolute`" + }, + { + "description": "Enables the basename command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-basename", + "markdownDescription": "Enables the basename command without any pre-configured scope." + }, + { + "description": "Enables the dirname command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-dirname", + "markdownDescription": "Enables the dirname command without any pre-configured scope." + }, + { + "description": "Enables the extname command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-extname", + "markdownDescription": "Enables the extname command without any pre-configured scope." + }, + { + "description": "Enables the is_absolute command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-is-absolute", + "markdownDescription": "Enables the is_absolute command without any pre-configured scope." + }, + { + "description": "Enables the join command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-join", + "markdownDescription": "Enables the join command without any pre-configured scope." + }, + { + "description": "Enables the normalize command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-normalize", + "markdownDescription": "Enables the normalize command without any pre-configured scope." + }, + { + "description": "Enables the resolve command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-resolve", + "markdownDescription": "Enables the resolve command without any pre-configured scope." + }, + { + "description": "Enables the resolve_directory command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-resolve-directory", + "markdownDescription": "Enables the resolve_directory command without any pre-configured scope." + }, + { + "description": "Denies the basename command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-basename", + "markdownDescription": "Denies the basename command without any pre-configured scope." + }, + { + "description": "Denies the dirname command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-dirname", + "markdownDescription": "Denies the dirname command without any pre-configured scope." + }, + { + "description": "Denies the extname command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-extname", + "markdownDescription": "Denies the extname command without any pre-configured scope." + }, + { + "description": "Denies the is_absolute command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-is-absolute", + "markdownDescription": "Denies the is_absolute command without any pre-configured scope." + }, + { + "description": "Denies the join command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-join", + "markdownDescription": "Denies the join command without any pre-configured scope." + }, + { + "description": "Denies the normalize command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-normalize", + "markdownDescription": "Denies the normalize command without any pre-configured scope." + }, + { + "description": "Denies the resolve command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-resolve", + "markdownDescription": "Denies the resolve command without any pre-configured scope." + }, + { + "description": "Denies the resolve_directory command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-resolve-directory", + "markdownDescription": "Denies the resolve_directory command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-close`", + "type": "string", + "const": "core:resources:default", + "markdownDescription": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-close`" + }, + { + "description": "Enables the close command without any pre-configured scope.", + "type": "string", + "const": "core:resources:allow-close", + "markdownDescription": "Enables the close command without any pre-configured scope." + }, + { + "description": "Denies the close command without any pre-configured scope.", + "type": "string", + "const": "core:resources:deny-close", + "markdownDescription": "Denies the close command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-new`\n- `allow-get-by-id`\n- `allow-remove-by-id`\n- `allow-set-icon`\n- `allow-set-menu`\n- `allow-set-tooltip`\n- `allow-set-title`\n- `allow-set-visible`\n- `allow-set-temp-dir-path`\n- `allow-set-icon-as-template`\n- `allow-set-show-menu-on-left-click`", + "type": "string", + "const": "core:tray:default", + "markdownDescription": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-new`\n- `allow-get-by-id`\n- `allow-remove-by-id`\n- `allow-set-icon`\n- `allow-set-menu`\n- `allow-set-tooltip`\n- `allow-set-title`\n- `allow-set-visible`\n- `allow-set-temp-dir-path`\n- `allow-set-icon-as-template`\n- `allow-set-show-menu-on-left-click`" + }, + { + "description": "Enables the get_by_id command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-get-by-id", + "markdownDescription": "Enables the get_by_id command without any pre-configured scope." + }, + { + "description": "Enables the new command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-new", + "markdownDescription": "Enables the new command without any pre-configured scope." + }, + { + "description": "Enables the remove_by_id command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-remove-by-id", + "markdownDescription": "Enables the remove_by_id command without any pre-configured scope." + }, + { + "description": "Enables the set_icon command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-icon", + "markdownDescription": "Enables the set_icon command without any pre-configured scope." + }, + { + "description": "Enables the set_icon_as_template command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-icon-as-template", + "markdownDescription": "Enables the set_icon_as_template command without any pre-configured scope." + }, + { + "description": "Enables the set_menu command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-menu", + "markdownDescription": "Enables the set_menu command without any pre-configured scope." + }, + { + "description": "Enables the set_show_menu_on_left_click command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-show-menu-on-left-click", + "markdownDescription": "Enables the set_show_menu_on_left_click command without any pre-configured scope." + }, + { + "description": "Enables the set_temp_dir_path command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-temp-dir-path", + "markdownDescription": "Enables the set_temp_dir_path command without any pre-configured scope." + }, + { + "description": "Enables the set_title command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-title", + "markdownDescription": "Enables the set_title command without any pre-configured scope." + }, + { + "description": "Enables the set_tooltip command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-tooltip", + "markdownDescription": "Enables the set_tooltip command without any pre-configured scope." + }, + { + "description": "Enables the set_visible command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-visible", + "markdownDescription": "Enables the set_visible command without any pre-configured scope." + }, + { + "description": "Denies the get_by_id command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-get-by-id", + "markdownDescription": "Denies the get_by_id command without any pre-configured scope." + }, + { + "description": "Denies the new command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-new", + "markdownDescription": "Denies the new command without any pre-configured scope." + }, + { + "description": "Denies the remove_by_id command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-remove-by-id", + "markdownDescription": "Denies the remove_by_id command without any pre-configured scope." + }, + { + "description": "Denies the set_icon command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-icon", + "markdownDescription": "Denies the set_icon command without any pre-configured scope." + }, + { + "description": "Denies the set_icon_as_template command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-icon-as-template", + "markdownDescription": "Denies the set_icon_as_template command without any pre-configured scope." + }, + { + "description": "Denies the set_menu command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-menu", + "markdownDescription": "Denies the set_menu command without any pre-configured scope." + }, + { + "description": "Denies the set_show_menu_on_left_click command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-show-menu-on-left-click", + "markdownDescription": "Denies the set_show_menu_on_left_click command without any pre-configured scope." + }, + { + "description": "Denies the set_temp_dir_path command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-temp-dir-path", + "markdownDescription": "Denies the set_temp_dir_path command without any pre-configured scope." + }, + { + "description": "Denies the set_title command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-title", + "markdownDescription": "Denies the set_title command without any pre-configured scope." + }, + { + "description": "Denies the set_tooltip command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-tooltip", + "markdownDescription": "Denies the set_tooltip command without any pre-configured scope." + }, + { + "description": "Denies the set_visible command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-visible", + "markdownDescription": "Denies the set_visible command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin.\n#### This default permission set includes:\n\n- `allow-get-all-webviews`\n- `allow-webview-position`\n- `allow-webview-size`\n- `allow-internal-toggle-devtools`", + "type": "string", + "const": "core:webview:default", + "markdownDescription": "Default permissions for the plugin.\n#### This default permission set includes:\n\n- `allow-get-all-webviews`\n- `allow-webview-position`\n- `allow-webview-size`\n- `allow-internal-toggle-devtools`" + }, + { + "description": "Enables the clear_all_browsing_data command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-clear-all-browsing-data", + "markdownDescription": "Enables the clear_all_browsing_data command without any pre-configured scope." + }, + { + "description": "Enables the create_webview command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-create-webview", + "markdownDescription": "Enables the create_webview command without any pre-configured scope." + }, + { + "description": "Enables the create_webview_window command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-create-webview-window", + "markdownDescription": "Enables the create_webview_window command without any pre-configured scope." + }, + { + "description": "Enables the get_all_webviews command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-get-all-webviews", + "markdownDescription": "Enables the get_all_webviews command without any pre-configured scope." + }, + { + "description": "Enables the internal_toggle_devtools command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-internal-toggle-devtools", + "markdownDescription": "Enables the internal_toggle_devtools command without any pre-configured scope." + }, + { + "description": "Enables the print command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-print", + "markdownDescription": "Enables the print command without any pre-configured scope." + }, + { + "description": "Enables the reparent command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-reparent", + "markdownDescription": "Enables the reparent command without any pre-configured scope." + }, + { + "description": "Enables the set_webview_auto_resize command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-set-webview-auto-resize", + "markdownDescription": "Enables the set_webview_auto_resize command without any pre-configured scope." + }, + { + "description": "Enables the set_webview_background_color command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-set-webview-background-color", + "markdownDescription": "Enables the set_webview_background_color command without any pre-configured scope." + }, + { + "description": "Enables the set_webview_focus command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-set-webview-focus", + "markdownDescription": "Enables the set_webview_focus command without any pre-configured scope." + }, + { + "description": "Enables the set_webview_position command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-set-webview-position", + "markdownDescription": "Enables the set_webview_position command without any pre-configured scope." + }, + { + "description": "Enables the set_webview_size command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-set-webview-size", + "markdownDescription": "Enables the set_webview_size command without any pre-configured scope." + }, + { + "description": "Enables the set_webview_zoom command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-set-webview-zoom", + "markdownDescription": "Enables the set_webview_zoom command without any pre-configured scope." + }, + { + "description": "Enables the webview_close command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-webview-close", + "markdownDescription": "Enables the webview_close command without any pre-configured scope." + }, + { + "description": "Enables the webview_hide command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-webview-hide", + "markdownDescription": "Enables the webview_hide command without any pre-configured scope." + }, + { + "description": "Enables the webview_position command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-webview-position", + "markdownDescription": "Enables the webview_position command without any pre-configured scope." + }, + { + "description": "Enables the webview_show command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-webview-show", + "markdownDescription": "Enables the webview_show command without any pre-configured scope." + }, + { + "description": "Enables the webview_size command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-webview-size", + "markdownDescription": "Enables the webview_size command without any pre-configured scope." + }, + { + "description": "Denies the clear_all_browsing_data command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-clear-all-browsing-data", + "markdownDescription": "Denies the clear_all_browsing_data command without any pre-configured scope." + }, + { + "description": "Denies the create_webview command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-create-webview", + "markdownDescription": "Denies the create_webview command without any pre-configured scope." + }, + { + "description": "Denies the create_webview_window command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-create-webview-window", + "markdownDescription": "Denies the create_webview_window command without any pre-configured scope." + }, + { + "description": "Denies the get_all_webviews command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-get-all-webviews", + "markdownDescription": "Denies the get_all_webviews command without any pre-configured scope." + }, + { + "description": "Denies the internal_toggle_devtools command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-internal-toggle-devtools", + "markdownDescription": "Denies the internal_toggle_devtools command without any pre-configured scope." + }, + { + "description": "Denies the print command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-print", + "markdownDescription": "Denies the print command without any pre-configured scope." + }, + { + "description": "Denies the reparent command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-reparent", + "markdownDescription": "Denies the reparent command without any pre-configured scope." + }, + { + "description": "Denies the set_webview_auto_resize command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-set-webview-auto-resize", + "markdownDescription": "Denies the set_webview_auto_resize command without any pre-configured scope." + }, + { + "description": "Denies the set_webview_background_color command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-set-webview-background-color", + "markdownDescription": "Denies the set_webview_background_color command without any pre-configured scope." + }, + { + "description": "Denies the set_webview_focus command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-set-webview-focus", + "markdownDescription": "Denies the set_webview_focus command without any pre-configured scope." + }, + { + "description": "Denies the set_webview_position command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-set-webview-position", + "markdownDescription": "Denies the set_webview_position command without any pre-configured scope." + }, + { + "description": "Denies the set_webview_size command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-set-webview-size", + "markdownDescription": "Denies the set_webview_size command without any pre-configured scope." + }, + { + "description": "Denies the set_webview_zoom command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-set-webview-zoom", + "markdownDescription": "Denies the set_webview_zoom command without any pre-configured scope." + }, + { + "description": "Denies the webview_close command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-webview-close", + "markdownDescription": "Denies the webview_close command without any pre-configured scope." + }, + { + "description": "Denies the webview_hide command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-webview-hide", + "markdownDescription": "Denies the webview_hide command without any pre-configured scope." + }, + { + "description": "Denies the webview_position command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-webview-position", + "markdownDescription": "Denies the webview_position command without any pre-configured scope." + }, + { + "description": "Denies the webview_show command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-webview-show", + "markdownDescription": "Denies the webview_show command without any pre-configured scope." + }, + { + "description": "Denies the webview_size command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-webview-size", + "markdownDescription": "Denies the webview_size command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin.\n#### This default permission set includes:\n\n- `allow-get-all-windows`\n- `allow-scale-factor`\n- `allow-inner-position`\n- `allow-outer-position`\n- `allow-inner-size`\n- `allow-outer-size`\n- `allow-is-fullscreen`\n- `allow-is-minimized`\n- `allow-is-maximized`\n- `allow-is-focused`\n- `allow-is-decorated`\n- `allow-is-resizable`\n- `allow-is-maximizable`\n- `allow-is-minimizable`\n- `allow-is-closable`\n- `allow-is-visible`\n- `allow-is-enabled`\n- `allow-title`\n- `allow-current-monitor`\n- `allow-primary-monitor`\n- `allow-monitor-from-point`\n- `allow-available-monitors`\n- `allow-cursor-position`\n- `allow-theme`\n- `allow-is-always-on-top`\n- `allow-internal-toggle-maximize`", + "type": "string", + "const": "core:window:default", + "markdownDescription": "Default permissions for the plugin.\n#### This default permission set includes:\n\n- `allow-get-all-windows`\n- `allow-scale-factor`\n- `allow-inner-position`\n- `allow-outer-position`\n- `allow-inner-size`\n- `allow-outer-size`\n- `allow-is-fullscreen`\n- `allow-is-minimized`\n- `allow-is-maximized`\n- `allow-is-focused`\n- `allow-is-decorated`\n- `allow-is-resizable`\n- `allow-is-maximizable`\n- `allow-is-minimizable`\n- `allow-is-closable`\n- `allow-is-visible`\n- `allow-is-enabled`\n- `allow-title`\n- `allow-current-monitor`\n- `allow-primary-monitor`\n- `allow-monitor-from-point`\n- `allow-available-monitors`\n- `allow-cursor-position`\n- `allow-theme`\n- `allow-is-always-on-top`\n- `allow-internal-toggle-maximize`" + }, + { + "description": "Enables the available_monitors command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-available-monitors", + "markdownDescription": "Enables the available_monitors command without any pre-configured scope." + }, + { + "description": "Enables the center command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-center", + "markdownDescription": "Enables the center command without any pre-configured scope." + }, + { + "description": "Enables the close command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-close", + "markdownDescription": "Enables the close command without any pre-configured scope." + }, + { + "description": "Enables the create command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-create", + "markdownDescription": "Enables the create command without any pre-configured scope." + }, + { + "description": "Enables the current_monitor command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-current-monitor", + "markdownDescription": "Enables the current_monitor command without any pre-configured scope." + }, + { + "description": "Enables the cursor_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-cursor-position", + "markdownDescription": "Enables the cursor_position command without any pre-configured scope." + }, + { + "description": "Enables the destroy command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-destroy", + "markdownDescription": "Enables the destroy command without any pre-configured scope." + }, + { + "description": "Enables the get_all_windows command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-get-all-windows", + "markdownDescription": "Enables the get_all_windows command without any pre-configured scope." + }, + { + "description": "Enables the hide command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-hide", + "markdownDescription": "Enables the hide command without any pre-configured scope." + }, + { + "description": "Enables the inner_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-inner-position", + "markdownDescription": "Enables the inner_position command without any pre-configured scope." + }, + { + "description": "Enables the inner_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-inner-size", + "markdownDescription": "Enables the inner_size command without any pre-configured scope." + }, + { + "description": "Enables the internal_toggle_maximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-internal-toggle-maximize", + "markdownDescription": "Enables the internal_toggle_maximize command without any pre-configured scope." + }, + { + "description": "Enables the is_always_on_top command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-always-on-top", + "markdownDescription": "Enables the is_always_on_top command without any pre-configured scope." + }, + { + "description": "Enables the is_closable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-closable", + "markdownDescription": "Enables the is_closable command without any pre-configured scope." + }, + { + "description": "Enables the is_decorated command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-decorated", + "markdownDescription": "Enables the is_decorated command without any pre-configured scope." + }, + { + "description": "Enables the is_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-enabled", + "markdownDescription": "Enables the is_enabled command without any pre-configured scope." + }, + { + "description": "Enables the is_focused command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-focused", + "markdownDescription": "Enables the is_focused command without any pre-configured scope." + }, + { + "description": "Enables the is_fullscreen command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-fullscreen", + "markdownDescription": "Enables the is_fullscreen command without any pre-configured scope." + }, + { + "description": "Enables the is_maximizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-maximizable", + "markdownDescription": "Enables the is_maximizable command without any pre-configured scope." + }, + { + "description": "Enables the is_maximized command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-maximized", + "markdownDescription": "Enables the is_maximized command without any pre-configured scope." + }, + { + "description": "Enables the is_minimizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-minimizable", + "markdownDescription": "Enables the is_minimizable command without any pre-configured scope." + }, + { + "description": "Enables the is_minimized command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-minimized", + "markdownDescription": "Enables the is_minimized command without any pre-configured scope." + }, + { + "description": "Enables the is_resizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-resizable", + "markdownDescription": "Enables the is_resizable command without any pre-configured scope." + }, + { + "description": "Enables the is_visible command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-visible", + "markdownDescription": "Enables the is_visible command without any pre-configured scope." + }, + { + "description": "Enables the maximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-maximize", + "markdownDescription": "Enables the maximize command without any pre-configured scope." + }, + { + "description": "Enables the minimize command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-minimize", + "markdownDescription": "Enables the minimize command without any pre-configured scope." + }, + { + "description": "Enables the monitor_from_point command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-monitor-from-point", + "markdownDescription": "Enables the monitor_from_point command without any pre-configured scope." + }, + { + "description": "Enables the outer_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-outer-position", + "markdownDescription": "Enables the outer_position command without any pre-configured scope." + }, + { + "description": "Enables the outer_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-outer-size", + "markdownDescription": "Enables the outer_size command without any pre-configured scope." + }, + { + "description": "Enables the primary_monitor command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-primary-monitor", + "markdownDescription": "Enables the primary_monitor command without any pre-configured scope." + }, + { + "description": "Enables the request_user_attention command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-request-user-attention", + "markdownDescription": "Enables the request_user_attention command without any pre-configured scope." + }, + { + "description": "Enables the scale_factor command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-scale-factor", + "markdownDescription": "Enables the scale_factor command without any pre-configured scope." + }, + { + "description": "Enables the set_always_on_bottom command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-always-on-bottom", + "markdownDescription": "Enables the set_always_on_bottom command without any pre-configured scope." + }, + { + "description": "Enables the set_always_on_top command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-always-on-top", + "markdownDescription": "Enables the set_always_on_top command without any pre-configured scope." + }, + { + "description": "Enables the set_background_color command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-background-color", + "markdownDescription": "Enables the set_background_color command without any pre-configured scope." + }, + { + "description": "Enables the set_badge_count command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-badge-count", + "markdownDescription": "Enables the set_badge_count command without any pre-configured scope." + }, + { + "description": "Enables the set_badge_label command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-badge-label", + "markdownDescription": "Enables the set_badge_label command without any pre-configured scope." + }, + { + "description": "Enables the set_closable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-closable", + "markdownDescription": "Enables the set_closable command without any pre-configured scope." + }, + { + "description": "Enables the set_content_protected command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-content-protected", + "markdownDescription": "Enables the set_content_protected command without any pre-configured scope." + }, + { + "description": "Enables the set_cursor_grab command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-cursor-grab", + "markdownDescription": "Enables the set_cursor_grab command without any pre-configured scope." + }, + { + "description": "Enables the set_cursor_icon command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-cursor-icon", + "markdownDescription": "Enables the set_cursor_icon command without any pre-configured scope." + }, + { + "description": "Enables the set_cursor_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-cursor-position", + "markdownDescription": "Enables the set_cursor_position command without any pre-configured scope." + }, + { + "description": "Enables the set_cursor_visible command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-cursor-visible", + "markdownDescription": "Enables the set_cursor_visible command without any pre-configured scope." + }, + { + "description": "Enables the set_decorations command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-decorations", + "markdownDescription": "Enables the set_decorations command without any pre-configured scope." + }, + { + "description": "Enables the set_effects command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-effects", + "markdownDescription": "Enables the set_effects command without any pre-configured scope." + }, + { + "description": "Enables the set_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-enabled", + "markdownDescription": "Enables the set_enabled command without any pre-configured scope." + }, + { + "description": "Enables the set_focus command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-focus", + "markdownDescription": "Enables the set_focus command without any pre-configured scope." + }, + { + "description": "Enables the set_focusable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-focusable", + "markdownDescription": "Enables the set_focusable command without any pre-configured scope." + }, + { + "description": "Enables the set_fullscreen command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-fullscreen", + "markdownDescription": "Enables the set_fullscreen command without any pre-configured scope." + }, + { + "description": "Enables the set_icon command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-icon", + "markdownDescription": "Enables the set_icon command without any pre-configured scope." + }, + { + "description": "Enables the set_ignore_cursor_events command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-ignore-cursor-events", + "markdownDescription": "Enables the set_ignore_cursor_events command without any pre-configured scope." + }, + { + "description": "Enables the set_max_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-max-size", + "markdownDescription": "Enables the set_max_size command without any pre-configured scope." + }, + { + "description": "Enables the set_maximizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-maximizable", + "markdownDescription": "Enables the set_maximizable command without any pre-configured scope." + }, + { + "description": "Enables the set_min_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-min-size", + "markdownDescription": "Enables the set_min_size command without any pre-configured scope." + }, + { + "description": "Enables the set_minimizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-minimizable", + "markdownDescription": "Enables the set_minimizable command without any pre-configured scope." + }, + { + "description": "Enables the set_overlay_icon command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-overlay-icon", + "markdownDescription": "Enables the set_overlay_icon command without any pre-configured scope." + }, + { + "description": "Enables the set_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-position", + "markdownDescription": "Enables the set_position command without any pre-configured scope." + }, + { + "description": "Enables the set_progress_bar command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-progress-bar", + "markdownDescription": "Enables the set_progress_bar command without any pre-configured scope." + }, + { + "description": "Enables the set_resizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-resizable", + "markdownDescription": "Enables the set_resizable command without any pre-configured scope." + }, + { + "description": "Enables the set_shadow command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-shadow", + "markdownDescription": "Enables the set_shadow command without any pre-configured scope." + }, + { + "description": "Enables the set_simple_fullscreen command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-simple-fullscreen", + "markdownDescription": "Enables the set_simple_fullscreen command without any pre-configured scope." + }, + { + "description": "Enables the set_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-size", + "markdownDescription": "Enables the set_size command without any pre-configured scope." + }, + { + "description": "Enables the set_size_constraints command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-size-constraints", + "markdownDescription": "Enables the set_size_constraints command without any pre-configured scope." + }, + { + "description": "Enables the set_skip_taskbar command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-skip-taskbar", + "markdownDescription": "Enables the set_skip_taskbar command without any pre-configured scope." + }, + { + "description": "Enables the set_theme command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-theme", + "markdownDescription": "Enables the set_theme command without any pre-configured scope." + }, + { + "description": "Enables the set_title command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-title", + "markdownDescription": "Enables the set_title command without any pre-configured scope." + }, + { + "description": "Enables the set_title_bar_style command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-title-bar-style", + "markdownDescription": "Enables the set_title_bar_style command without any pre-configured scope." + }, + { + "description": "Enables the set_visible_on_all_workspaces command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-visible-on-all-workspaces", + "markdownDescription": "Enables the set_visible_on_all_workspaces command without any pre-configured scope." + }, + { + "description": "Enables the show command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-show", + "markdownDescription": "Enables the show command without any pre-configured scope." + }, + { + "description": "Enables the start_dragging command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-start-dragging", + "markdownDescription": "Enables the start_dragging command without any pre-configured scope." + }, + { + "description": "Enables the start_resize_dragging command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-start-resize-dragging", + "markdownDescription": "Enables the start_resize_dragging command without any pre-configured scope." + }, + { + "description": "Enables the theme command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-theme", + "markdownDescription": "Enables the theme command without any pre-configured scope." + }, + { + "description": "Enables the title command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-title", + "markdownDescription": "Enables the title command without any pre-configured scope." + }, + { + "description": "Enables the toggle_maximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-toggle-maximize", + "markdownDescription": "Enables the toggle_maximize command without any pre-configured scope." + }, + { + "description": "Enables the unmaximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-unmaximize", + "markdownDescription": "Enables the unmaximize command without any pre-configured scope." + }, + { + "description": "Enables the unminimize command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-unminimize", + "markdownDescription": "Enables the unminimize command without any pre-configured scope." + }, + { + "description": "Denies the available_monitors command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-available-monitors", + "markdownDescription": "Denies the available_monitors command without any pre-configured scope." + }, + { + "description": "Denies the center command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-center", + "markdownDescription": "Denies the center command without any pre-configured scope." + }, + { + "description": "Denies the close command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-close", + "markdownDescription": "Denies the close command without any pre-configured scope." + }, + { + "description": "Denies the create command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-create", + "markdownDescription": "Denies the create command without any pre-configured scope." + }, + { + "description": "Denies the current_monitor command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-current-monitor", + "markdownDescription": "Denies the current_monitor command without any pre-configured scope." + }, + { + "description": "Denies the cursor_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-cursor-position", + "markdownDescription": "Denies the cursor_position command without any pre-configured scope." + }, + { + "description": "Denies the destroy command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-destroy", + "markdownDescription": "Denies the destroy command without any pre-configured scope." + }, + { + "description": "Denies the get_all_windows command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-get-all-windows", + "markdownDescription": "Denies the get_all_windows command without any pre-configured scope." + }, + { + "description": "Denies the hide command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-hide", + "markdownDescription": "Denies the hide command without any pre-configured scope." + }, + { + "description": "Denies the inner_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-inner-position", + "markdownDescription": "Denies the inner_position command without any pre-configured scope." + }, + { + "description": "Denies the inner_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-inner-size", + "markdownDescription": "Denies the inner_size command without any pre-configured scope." + }, + { + "description": "Denies the internal_toggle_maximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-internal-toggle-maximize", + "markdownDescription": "Denies the internal_toggle_maximize command without any pre-configured scope." + }, + { + "description": "Denies the is_always_on_top command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-always-on-top", + "markdownDescription": "Denies the is_always_on_top command without any pre-configured scope." + }, + { + "description": "Denies the is_closable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-closable", + "markdownDescription": "Denies the is_closable command without any pre-configured scope." + }, + { + "description": "Denies the is_decorated command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-decorated", + "markdownDescription": "Denies the is_decorated command without any pre-configured scope." + }, + { + "description": "Denies the is_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-enabled", + "markdownDescription": "Denies the is_enabled command without any pre-configured scope." + }, + { + "description": "Denies the is_focused command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-focused", + "markdownDescription": "Denies the is_focused command without any pre-configured scope." + }, + { + "description": "Denies the is_fullscreen command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-fullscreen", + "markdownDescription": "Denies the is_fullscreen command without any pre-configured scope." + }, + { + "description": "Denies the is_maximizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-maximizable", + "markdownDescription": "Denies the is_maximizable command without any pre-configured scope." + }, + { + "description": "Denies the is_maximized command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-maximized", + "markdownDescription": "Denies the is_maximized command without any pre-configured scope." + }, + { + "description": "Denies the is_minimizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-minimizable", + "markdownDescription": "Denies the is_minimizable command without any pre-configured scope." + }, + { + "description": "Denies the is_minimized command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-minimized", + "markdownDescription": "Denies the is_minimized command without any pre-configured scope." + }, + { + "description": "Denies the is_resizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-resizable", + "markdownDescription": "Denies the is_resizable command without any pre-configured scope." + }, + { + "description": "Denies the is_visible command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-visible", + "markdownDescription": "Denies the is_visible command without any pre-configured scope." + }, + { + "description": "Denies the maximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-maximize", + "markdownDescription": "Denies the maximize command without any pre-configured scope." + }, + { + "description": "Denies the minimize command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-minimize", + "markdownDescription": "Denies the minimize command without any pre-configured scope." + }, + { + "description": "Denies the monitor_from_point command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-monitor-from-point", + "markdownDescription": "Denies the monitor_from_point command without any pre-configured scope." + }, + { + "description": "Denies the outer_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-outer-position", + "markdownDescription": "Denies the outer_position command without any pre-configured scope." + }, + { + "description": "Denies the outer_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-outer-size", + "markdownDescription": "Denies the outer_size command without any pre-configured scope." + }, + { + "description": "Denies the primary_monitor command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-primary-monitor", + "markdownDescription": "Denies the primary_monitor command without any pre-configured scope." + }, + { + "description": "Denies the request_user_attention command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-request-user-attention", + "markdownDescription": "Denies the request_user_attention command without any pre-configured scope." + }, + { + "description": "Denies the scale_factor command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-scale-factor", + "markdownDescription": "Denies the scale_factor command without any pre-configured scope." + }, + { + "description": "Denies the set_always_on_bottom command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-always-on-bottom", + "markdownDescription": "Denies the set_always_on_bottom command without any pre-configured scope." + }, + { + "description": "Denies the set_always_on_top command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-always-on-top", + "markdownDescription": "Denies the set_always_on_top command without any pre-configured scope." + }, + { + "description": "Denies the set_background_color command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-background-color", + "markdownDescription": "Denies the set_background_color command without any pre-configured scope." + }, + { + "description": "Denies the set_badge_count command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-badge-count", + "markdownDescription": "Denies the set_badge_count command without any pre-configured scope." + }, + { + "description": "Denies the set_badge_label command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-badge-label", + "markdownDescription": "Denies the set_badge_label command without any pre-configured scope." + }, + { + "description": "Denies the set_closable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-closable", + "markdownDescription": "Denies the set_closable command without any pre-configured scope." + }, + { + "description": "Denies the set_content_protected command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-content-protected", + "markdownDescription": "Denies the set_content_protected command without any pre-configured scope." + }, + { + "description": "Denies the set_cursor_grab command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-cursor-grab", + "markdownDescription": "Denies the set_cursor_grab command without any pre-configured scope." + }, + { + "description": "Denies the set_cursor_icon command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-cursor-icon", + "markdownDescription": "Denies the set_cursor_icon command without any pre-configured scope." + }, + { + "description": "Denies the set_cursor_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-cursor-position", + "markdownDescription": "Denies the set_cursor_position command without any pre-configured scope." + }, + { + "description": "Denies the set_cursor_visible command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-cursor-visible", + "markdownDescription": "Denies the set_cursor_visible command without any pre-configured scope." + }, + { + "description": "Denies the set_decorations command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-decorations", + "markdownDescription": "Denies the set_decorations command without any pre-configured scope." + }, + { + "description": "Denies the set_effects command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-effects", + "markdownDescription": "Denies the set_effects command without any pre-configured scope." + }, + { + "description": "Denies the set_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-enabled", + "markdownDescription": "Denies the set_enabled command without any pre-configured scope." + }, + { + "description": "Denies the set_focus command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-focus", + "markdownDescription": "Denies the set_focus command without any pre-configured scope." + }, + { + "description": "Denies the set_focusable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-focusable", + "markdownDescription": "Denies the set_focusable command without any pre-configured scope." + }, + { + "description": "Denies the set_fullscreen command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-fullscreen", + "markdownDescription": "Denies the set_fullscreen command without any pre-configured scope." + }, + { + "description": "Denies the set_icon command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-icon", + "markdownDescription": "Denies the set_icon command without any pre-configured scope." + }, + { + "description": "Denies the set_ignore_cursor_events command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-ignore-cursor-events", + "markdownDescription": "Denies the set_ignore_cursor_events command without any pre-configured scope." + }, + { + "description": "Denies the set_max_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-max-size", + "markdownDescription": "Denies the set_max_size command without any pre-configured scope." + }, + { + "description": "Denies the set_maximizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-maximizable", + "markdownDescription": "Denies the set_maximizable command without any pre-configured scope." + }, + { + "description": "Denies the set_min_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-min-size", + "markdownDescription": "Denies the set_min_size command without any pre-configured scope." + }, + { + "description": "Denies the set_minimizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-minimizable", + "markdownDescription": "Denies the set_minimizable command without any pre-configured scope." + }, + { + "description": "Denies the set_overlay_icon command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-overlay-icon", + "markdownDescription": "Denies the set_overlay_icon command without any pre-configured scope." + }, + { + "description": "Denies the set_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-position", + "markdownDescription": "Denies the set_position command without any pre-configured scope." + }, + { + "description": "Denies the set_progress_bar command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-progress-bar", + "markdownDescription": "Denies the set_progress_bar command without any pre-configured scope." + }, + { + "description": "Denies the set_resizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-resizable", + "markdownDescription": "Denies the set_resizable command without any pre-configured scope." + }, + { + "description": "Denies the set_shadow command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-shadow", + "markdownDescription": "Denies the set_shadow command without any pre-configured scope." + }, + { + "description": "Denies the set_simple_fullscreen command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-simple-fullscreen", + "markdownDescription": "Denies the set_simple_fullscreen command without any pre-configured scope." + }, + { + "description": "Denies the set_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-size", + "markdownDescription": "Denies the set_size command without any pre-configured scope." + }, + { + "description": "Denies the set_size_constraints command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-size-constraints", + "markdownDescription": "Denies the set_size_constraints command without any pre-configured scope." + }, + { + "description": "Denies the set_skip_taskbar command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-skip-taskbar", + "markdownDescription": "Denies the set_skip_taskbar command without any pre-configured scope." + }, + { + "description": "Denies the set_theme command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-theme", + "markdownDescription": "Denies the set_theme command without any pre-configured scope." + }, + { + "description": "Denies the set_title command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-title", + "markdownDescription": "Denies the set_title command without any pre-configured scope." + }, + { + "description": "Denies the set_title_bar_style command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-title-bar-style", + "markdownDescription": "Denies the set_title_bar_style command without any pre-configured scope." + }, + { + "description": "Denies the set_visible_on_all_workspaces command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-visible-on-all-workspaces", + "markdownDescription": "Denies the set_visible_on_all_workspaces command without any pre-configured scope." + }, + { + "description": "Denies the show command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-show", + "markdownDescription": "Denies the show command without any pre-configured scope." + }, + { + "description": "Denies the start_dragging command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-start-dragging", + "markdownDescription": "Denies the start_dragging command without any pre-configured scope." + }, + { + "description": "Denies the start_resize_dragging command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-start-resize-dragging", + "markdownDescription": "Denies the start_resize_dragging command without any pre-configured scope." + }, + { + "description": "Denies the theme command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-theme", + "markdownDescription": "Denies the theme command without any pre-configured scope." + }, + { + "description": "Denies the title command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-title", + "markdownDescription": "Denies the title command without any pre-configured scope." + }, + { + "description": "Denies the toggle_maximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-toggle-maximize", + "markdownDescription": "Denies the toggle_maximize command without any pre-configured scope." + }, + { + "description": "Denies the unmaximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-unmaximize", + "markdownDescription": "Denies the unmaximize command without any pre-configured scope." + }, + { + "description": "Denies the unminimize command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-unminimize", + "markdownDescription": "Denies the unminimize command without any pre-configured scope." + }, + { + "description": "This permission set configures the types of dialogs\navailable from the dialog plugin.\n\n#### Granted Permissions\n\nAll dialog types are enabled.\n\n\n\n#### This default permission set includes:\n\n- `allow-message`\n- `allow-save`\n- `allow-open`", + "type": "string", + "const": "dialog:default", + "markdownDescription": "This permission set configures the types of dialogs\navailable from the dialog plugin.\n\n#### Granted Permissions\n\nAll dialog types are enabled.\n\n\n\n#### This default permission set includes:\n\n- `allow-message`\n- `allow-save`\n- `allow-open`" + }, + { + "description": "Enables the ask command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `allow-message` and will be removed in v3)", + "type": "string", + "const": "dialog:allow-ask", + "markdownDescription": "Enables the ask command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `allow-message` and will be removed in v3)" + }, + { + "description": "Enables the confirm command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `allow-message` and will be removed in v3)", + "type": "string", + "const": "dialog:allow-confirm", + "markdownDescription": "Enables the confirm command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `allow-message` and will be removed in v3)" + }, + { + "description": "Enables the message command without any pre-configured scope.", + "type": "string", + "const": "dialog:allow-message", + "markdownDescription": "Enables the message command without any pre-configured scope." + }, + { + "description": "Enables the open command without any pre-configured scope.", + "type": "string", + "const": "dialog:allow-open", + "markdownDescription": "Enables the open command without any pre-configured scope." + }, + { + "description": "Enables the save command without any pre-configured scope.", + "type": "string", + "const": "dialog:allow-save", + "markdownDescription": "Enables the save command without any pre-configured scope." + }, + { + "description": "Denies the ask command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `deny-message` and will be removed in v3)", + "type": "string", + "const": "dialog:deny-ask", + "markdownDescription": "Denies the ask command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `deny-message` and will be removed in v3)" + }, + { + "description": "Denies the confirm command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `deny-message` and will be removed in v3)", + "type": "string", + "const": "dialog:deny-confirm", + "markdownDescription": "Denies the confirm command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `deny-message` and will be removed in v3)" + }, + { + "description": "Denies the message command without any pre-configured scope.", + "type": "string", + "const": "dialog:deny-message", + "markdownDescription": "Denies the message command without any pre-configured scope." + }, + { + "description": "Denies the open command without any pre-configured scope.", + "type": "string", + "const": "dialog:deny-open", + "markdownDescription": "Denies the open command without any pre-configured scope." + }, + { + "description": "Denies the save command without any pre-configured scope.", + "type": "string", + "const": "dialog:deny-save", + "markdownDescription": "Denies the save command without any pre-configured scope." + }, + { + "description": "This set of permissions describes the what kind of\nfile system access the `fs` plugin has enabled or denied by default.\n\n#### Granted Permissions\n\nThis default permission set enables read access to the\napplication specific directories (AppConfig, AppData, AppLocalData, AppCache,\nAppLog) and all files and sub directories created in it.\nThe location of these directories depends on the operating system,\nwhere the application is run.\n\nIn general these directories need to be manually created\nby the application at runtime, before accessing files or folders\nin it is possible.\n\nTherefore, it is also allowed to create all of these folders via\nthe `mkdir` command.\n\n#### Denied Permissions\n\nThis default permission set prevents access to critical components\nof the Tauri application by default.\nOn Windows the webview data folder access is denied.\n\n#### This default permission set includes:\n\n- `create-app-specific-dirs`\n- `read-app-specific-dirs-recursive`\n- `deny-default`", + "type": "string", + "const": "fs:default", + "markdownDescription": "This set of permissions describes the what kind of\nfile system access the `fs` plugin has enabled or denied by default.\n\n#### Granted Permissions\n\nThis default permission set enables read access to the\napplication specific directories (AppConfig, AppData, AppLocalData, AppCache,\nAppLog) and all files and sub directories created in it.\nThe location of these directories depends on the operating system,\nwhere the application is run.\n\nIn general these directories need to be manually created\nby the application at runtime, before accessing files or folders\nin it is possible.\n\nTherefore, it is also allowed to create all of these folders via\nthe `mkdir` command.\n\n#### Denied Permissions\n\nThis default permission set prevents access to critical components\nof the Tauri application by default.\nOn Windows the webview data folder access is denied.\n\n#### This default permission set includes:\n\n- `create-app-specific-dirs`\n- `read-app-specific-dirs-recursive`\n- `deny-default`" + }, + { + "description": "This allows non-recursive read access to metadata of the application folders, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-app-index`", + "type": "string", + "const": "fs:allow-app-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the application folders, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-app-index`" + }, + { + "description": "This allows full recursive read access to metadata of the application folders, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-app-recursive`", + "type": "string", + "const": "fs:allow-app-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the application folders, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-app-recursive`" + }, + { + "description": "This allows non-recursive read access to the application folders.\n#### This permission set includes:\n\n- `read-all`\n- `scope-app`", + "type": "string", + "const": "fs:allow-app-read", + "markdownDescription": "This allows non-recursive read access to the application folders.\n#### This permission set includes:\n\n- `read-all`\n- `scope-app`" + }, + { + "description": "This allows full recursive read access to the complete application folders, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-app-recursive`", + "type": "string", + "const": "fs:allow-app-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete application folders, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-app-recursive`" + }, + { + "description": "This allows non-recursive write access to the application folders.\n#### This permission set includes:\n\n- `write-all`\n- `scope-app`", + "type": "string", + "const": "fs:allow-app-write", + "markdownDescription": "This allows non-recursive write access to the application folders.\n#### This permission set includes:\n\n- `write-all`\n- `scope-app`" + }, + { + "description": "This allows full recursive write access to the complete application folders, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-app-recursive`", + "type": "string", + "const": "fs:allow-app-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete application folders, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-app-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appcache-index`", + "type": "string", + "const": "fs:allow-appcache-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appcache-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appcache-recursive`", + "type": "string", + "const": "fs:allow-appcache-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appcache-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$APPCACHE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appcache`", + "type": "string", + "const": "fs:allow-appcache-read", + "markdownDescription": "This allows non-recursive read access to the `$APPCACHE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appcache`" + }, + { + "description": "This allows full recursive read access to the complete `$APPCACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appcache-recursive`", + "type": "string", + "const": "fs:allow-appcache-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$APPCACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appcache-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$APPCACHE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appcache`", + "type": "string", + "const": "fs:allow-appcache-write", + "markdownDescription": "This allows non-recursive write access to the `$APPCACHE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appcache`" + }, + { + "description": "This allows full recursive write access to the complete `$APPCACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appcache-recursive`", + "type": "string", + "const": "fs:allow-appcache-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$APPCACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appcache-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appconfig-index`", + "type": "string", + "const": "fs:allow-appconfig-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appconfig-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appconfig-recursive`", + "type": "string", + "const": "fs:allow-appconfig-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appconfig-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$APPCONFIG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appconfig`", + "type": "string", + "const": "fs:allow-appconfig-read", + "markdownDescription": "This allows non-recursive read access to the `$APPCONFIG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appconfig`" + }, + { + "description": "This allows full recursive read access to the complete `$APPCONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appconfig-recursive`", + "type": "string", + "const": "fs:allow-appconfig-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$APPCONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appconfig-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$APPCONFIG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appconfig`", + "type": "string", + "const": "fs:allow-appconfig-write", + "markdownDescription": "This allows non-recursive write access to the `$APPCONFIG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appconfig`" + }, + { + "description": "This allows full recursive write access to the complete `$APPCONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appconfig-recursive`", + "type": "string", + "const": "fs:allow-appconfig-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$APPCONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appconfig-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appdata-index`", + "type": "string", + "const": "fs:allow-appdata-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appdata-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appdata-recursive`", + "type": "string", + "const": "fs:allow-appdata-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appdata-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$APPDATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appdata`", + "type": "string", + "const": "fs:allow-appdata-read", + "markdownDescription": "This allows non-recursive read access to the `$APPDATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appdata`" + }, + { + "description": "This allows full recursive read access to the complete `$APPDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appdata-recursive`", + "type": "string", + "const": "fs:allow-appdata-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$APPDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appdata-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$APPDATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appdata`", + "type": "string", + "const": "fs:allow-appdata-write", + "markdownDescription": "This allows non-recursive write access to the `$APPDATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appdata`" + }, + { + "description": "This allows full recursive write access to the complete `$APPDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appdata-recursive`", + "type": "string", + "const": "fs:allow-appdata-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$APPDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appdata-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applocaldata-index`", + "type": "string", + "const": "fs:allow-applocaldata-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applocaldata-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applocaldata-recursive`", + "type": "string", + "const": "fs:allow-applocaldata-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applocaldata-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$APPLOCALDATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applocaldata`", + "type": "string", + "const": "fs:allow-applocaldata-read", + "markdownDescription": "This allows non-recursive read access to the `$APPLOCALDATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applocaldata`" + }, + { + "description": "This allows full recursive read access to the complete `$APPLOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applocaldata-recursive`", + "type": "string", + "const": "fs:allow-applocaldata-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$APPLOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applocaldata-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$APPLOCALDATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applocaldata`", + "type": "string", + "const": "fs:allow-applocaldata-write", + "markdownDescription": "This allows non-recursive write access to the `$APPLOCALDATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applocaldata`" + }, + { + "description": "This allows full recursive write access to the complete `$APPLOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applocaldata-recursive`", + "type": "string", + "const": "fs:allow-applocaldata-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$APPLOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applocaldata-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applog-index`", + "type": "string", + "const": "fs:allow-applog-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applog-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applog-recursive`", + "type": "string", + "const": "fs:allow-applog-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applog-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$APPLOG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applog`", + "type": "string", + "const": "fs:allow-applog-read", + "markdownDescription": "This allows non-recursive read access to the `$APPLOG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applog`" + }, + { + "description": "This allows full recursive read access to the complete `$APPLOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applog-recursive`", + "type": "string", + "const": "fs:allow-applog-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$APPLOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applog-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$APPLOG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applog`", + "type": "string", + "const": "fs:allow-applog-write", + "markdownDescription": "This allows non-recursive write access to the `$APPLOG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applog`" + }, + { + "description": "This allows full recursive write access to the complete `$APPLOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applog-recursive`", + "type": "string", + "const": "fs:allow-applog-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$APPLOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applog-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-audio-index`", + "type": "string", + "const": "fs:allow-audio-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-audio-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-audio-recursive`", + "type": "string", + "const": "fs:allow-audio-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-audio-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$AUDIO` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-audio`", + "type": "string", + "const": "fs:allow-audio-read", + "markdownDescription": "This allows non-recursive read access to the `$AUDIO` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-audio`" + }, + { + "description": "This allows full recursive read access to the complete `$AUDIO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-audio-recursive`", + "type": "string", + "const": "fs:allow-audio-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$AUDIO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-audio-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$AUDIO` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-audio`", + "type": "string", + "const": "fs:allow-audio-write", + "markdownDescription": "This allows non-recursive write access to the `$AUDIO` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-audio`" + }, + { + "description": "This allows full recursive write access to the complete `$AUDIO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-audio-recursive`", + "type": "string", + "const": "fs:allow-audio-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$AUDIO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-audio-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-cache-index`", + "type": "string", + "const": "fs:allow-cache-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-cache-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-cache-recursive`", + "type": "string", + "const": "fs:allow-cache-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-cache-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$CACHE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-cache`", + "type": "string", + "const": "fs:allow-cache-read", + "markdownDescription": "This allows non-recursive read access to the `$CACHE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-cache`" + }, + { + "description": "This allows full recursive read access to the complete `$CACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-cache-recursive`", + "type": "string", + "const": "fs:allow-cache-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$CACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-cache-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$CACHE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-cache`", + "type": "string", + "const": "fs:allow-cache-write", + "markdownDescription": "This allows non-recursive write access to the `$CACHE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-cache`" + }, + { + "description": "This allows full recursive write access to the complete `$CACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-cache-recursive`", + "type": "string", + "const": "fs:allow-cache-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$CACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-cache-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-config-index`", + "type": "string", + "const": "fs:allow-config-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-config-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-config-recursive`", + "type": "string", + "const": "fs:allow-config-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-config-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$CONFIG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-config`", + "type": "string", + "const": "fs:allow-config-read", + "markdownDescription": "This allows non-recursive read access to the `$CONFIG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-config`" + }, + { + "description": "This allows full recursive read access to the complete `$CONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-config-recursive`", + "type": "string", + "const": "fs:allow-config-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$CONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-config-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$CONFIG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-config`", + "type": "string", + "const": "fs:allow-config-write", + "markdownDescription": "This allows non-recursive write access to the `$CONFIG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-config`" + }, + { + "description": "This allows full recursive write access to the complete `$CONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-config-recursive`", + "type": "string", + "const": "fs:allow-config-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$CONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-config-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$DATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-data-index`", + "type": "string", + "const": "fs:allow-data-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$DATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-data-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$DATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-data-recursive`", + "type": "string", + "const": "fs:allow-data-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$DATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-data-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$DATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-data`", + "type": "string", + "const": "fs:allow-data-read", + "markdownDescription": "This allows non-recursive read access to the `$DATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-data`" + }, + { + "description": "This allows full recursive read access to the complete `$DATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-data-recursive`", + "type": "string", + "const": "fs:allow-data-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$DATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-data-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$DATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-data`", + "type": "string", + "const": "fs:allow-data-write", + "markdownDescription": "This allows non-recursive write access to the `$DATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-data`" + }, + { + "description": "This allows full recursive write access to the complete `$DATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-data-recursive`", + "type": "string", + "const": "fs:allow-data-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$DATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-data-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-desktop-index`", + "type": "string", + "const": "fs:allow-desktop-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-desktop-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-desktop-recursive`", + "type": "string", + "const": "fs:allow-desktop-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-desktop-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$DESKTOP` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-desktop`", + "type": "string", + "const": "fs:allow-desktop-read", + "markdownDescription": "This allows non-recursive read access to the `$DESKTOP` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-desktop`" + }, + { + "description": "This allows full recursive read access to the complete `$DESKTOP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-desktop-recursive`", + "type": "string", + "const": "fs:allow-desktop-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$DESKTOP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-desktop-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$DESKTOP` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-desktop`", + "type": "string", + "const": "fs:allow-desktop-write", + "markdownDescription": "This allows non-recursive write access to the `$DESKTOP` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-desktop`" + }, + { + "description": "This allows full recursive write access to the complete `$DESKTOP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-desktop-recursive`", + "type": "string", + "const": "fs:allow-desktop-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$DESKTOP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-desktop-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-document-index`", + "type": "string", + "const": "fs:allow-document-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-document-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-document-recursive`", + "type": "string", + "const": "fs:allow-document-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-document-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$DOCUMENT` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-document`", + "type": "string", + "const": "fs:allow-document-read", + "markdownDescription": "This allows non-recursive read access to the `$DOCUMENT` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-document`" + }, + { + "description": "This allows full recursive read access to the complete `$DOCUMENT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-document-recursive`", + "type": "string", + "const": "fs:allow-document-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$DOCUMENT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-document-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$DOCUMENT` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-document`", + "type": "string", + "const": "fs:allow-document-write", + "markdownDescription": "This allows non-recursive write access to the `$DOCUMENT` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-document`" + }, + { + "description": "This allows full recursive write access to the complete `$DOCUMENT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-document-recursive`", + "type": "string", + "const": "fs:allow-document-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$DOCUMENT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-document-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-download-index`", + "type": "string", + "const": "fs:allow-download-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-download-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-download-recursive`", + "type": "string", + "const": "fs:allow-download-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-download-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$DOWNLOAD` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-download`", + "type": "string", + "const": "fs:allow-download-read", + "markdownDescription": "This allows non-recursive read access to the `$DOWNLOAD` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-download`" + }, + { + "description": "This allows full recursive read access to the complete `$DOWNLOAD` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-download-recursive`", + "type": "string", + "const": "fs:allow-download-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$DOWNLOAD` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-download-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$DOWNLOAD` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-download`", + "type": "string", + "const": "fs:allow-download-write", + "markdownDescription": "This allows non-recursive write access to the `$DOWNLOAD` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-download`" + }, + { + "description": "This allows full recursive write access to the complete `$DOWNLOAD` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-download-recursive`", + "type": "string", + "const": "fs:allow-download-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$DOWNLOAD` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-download-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$EXE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-exe-index`", + "type": "string", + "const": "fs:allow-exe-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$EXE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-exe-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$EXE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-exe-recursive`", + "type": "string", + "const": "fs:allow-exe-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$EXE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-exe-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$EXE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-exe`", + "type": "string", + "const": "fs:allow-exe-read", + "markdownDescription": "This allows non-recursive read access to the `$EXE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-exe`" + }, + { + "description": "This allows full recursive read access to the complete `$EXE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-exe-recursive`", + "type": "string", + "const": "fs:allow-exe-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$EXE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-exe-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$EXE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-exe`", + "type": "string", + "const": "fs:allow-exe-write", + "markdownDescription": "This allows non-recursive write access to the `$EXE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-exe`" + }, + { + "description": "This allows full recursive write access to the complete `$EXE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-exe-recursive`", + "type": "string", + "const": "fs:allow-exe-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$EXE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-exe-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$FONT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-font-index`", + "type": "string", + "const": "fs:allow-font-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$FONT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-font-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$FONT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-font-recursive`", + "type": "string", + "const": "fs:allow-font-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$FONT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-font-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$FONT` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-font`", + "type": "string", + "const": "fs:allow-font-read", + "markdownDescription": "This allows non-recursive read access to the `$FONT` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-font`" + }, + { + "description": "This allows full recursive read access to the complete `$FONT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-font-recursive`", + "type": "string", + "const": "fs:allow-font-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$FONT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-font-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$FONT` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-font`", + "type": "string", + "const": "fs:allow-font-write", + "markdownDescription": "This allows non-recursive write access to the `$FONT` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-font`" + }, + { + "description": "This allows full recursive write access to the complete `$FONT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-font-recursive`", + "type": "string", + "const": "fs:allow-font-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$FONT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-font-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$HOME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-home-index`", + "type": "string", + "const": "fs:allow-home-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$HOME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-home-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$HOME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-home-recursive`", + "type": "string", + "const": "fs:allow-home-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$HOME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-home-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$HOME` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-home`", + "type": "string", + "const": "fs:allow-home-read", + "markdownDescription": "This allows non-recursive read access to the `$HOME` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-home`" + }, + { + "description": "This allows full recursive read access to the complete `$HOME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-home-recursive`", + "type": "string", + "const": "fs:allow-home-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$HOME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-home-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$HOME` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-home`", + "type": "string", + "const": "fs:allow-home-write", + "markdownDescription": "This allows non-recursive write access to the `$HOME` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-home`" + }, + { + "description": "This allows full recursive write access to the complete `$HOME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-home-recursive`", + "type": "string", + "const": "fs:allow-home-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$HOME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-home-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-localdata-index`", + "type": "string", + "const": "fs:allow-localdata-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-localdata-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-localdata-recursive`", + "type": "string", + "const": "fs:allow-localdata-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-localdata-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$LOCALDATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-localdata`", + "type": "string", + "const": "fs:allow-localdata-read", + "markdownDescription": "This allows non-recursive read access to the `$LOCALDATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-localdata`" + }, + { + "description": "This allows full recursive read access to the complete `$LOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-localdata-recursive`", + "type": "string", + "const": "fs:allow-localdata-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$LOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-localdata-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$LOCALDATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-localdata`", + "type": "string", + "const": "fs:allow-localdata-write", + "markdownDescription": "This allows non-recursive write access to the `$LOCALDATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-localdata`" + }, + { + "description": "This allows full recursive write access to the complete `$LOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-localdata-recursive`", + "type": "string", + "const": "fs:allow-localdata-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$LOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-localdata-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$LOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-log-index`", + "type": "string", + "const": "fs:allow-log-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$LOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-log-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$LOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-log-recursive`", + "type": "string", + "const": "fs:allow-log-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$LOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-log-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$LOG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-log`", + "type": "string", + "const": "fs:allow-log-read", + "markdownDescription": "This allows non-recursive read access to the `$LOG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-log`" + }, + { + "description": "This allows full recursive read access to the complete `$LOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-log-recursive`", + "type": "string", + "const": "fs:allow-log-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$LOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-log-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$LOG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-log`", + "type": "string", + "const": "fs:allow-log-write", + "markdownDescription": "This allows non-recursive write access to the `$LOG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-log`" + }, + { + "description": "This allows full recursive write access to the complete `$LOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-log-recursive`", + "type": "string", + "const": "fs:allow-log-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$LOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-log-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-picture-index`", + "type": "string", + "const": "fs:allow-picture-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-picture-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-picture-recursive`", + "type": "string", + "const": "fs:allow-picture-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-picture-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$PICTURE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-picture`", + "type": "string", + "const": "fs:allow-picture-read", + "markdownDescription": "This allows non-recursive read access to the `$PICTURE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-picture`" + }, + { + "description": "This allows full recursive read access to the complete `$PICTURE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-picture-recursive`", + "type": "string", + "const": "fs:allow-picture-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$PICTURE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-picture-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$PICTURE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-picture`", + "type": "string", + "const": "fs:allow-picture-write", + "markdownDescription": "This allows non-recursive write access to the `$PICTURE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-picture`" + }, + { + "description": "This allows full recursive write access to the complete `$PICTURE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-picture-recursive`", + "type": "string", + "const": "fs:allow-picture-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$PICTURE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-picture-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-public-index`", + "type": "string", + "const": "fs:allow-public-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-public-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-public-recursive`", + "type": "string", + "const": "fs:allow-public-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-public-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$PUBLIC` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-public`", + "type": "string", + "const": "fs:allow-public-read", + "markdownDescription": "This allows non-recursive read access to the `$PUBLIC` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-public`" + }, + { + "description": "This allows full recursive read access to the complete `$PUBLIC` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-public-recursive`", + "type": "string", + "const": "fs:allow-public-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$PUBLIC` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-public-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$PUBLIC` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-public`", + "type": "string", + "const": "fs:allow-public-write", + "markdownDescription": "This allows non-recursive write access to the `$PUBLIC` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-public`" + }, + { + "description": "This allows full recursive write access to the complete `$PUBLIC` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-public-recursive`", + "type": "string", + "const": "fs:allow-public-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$PUBLIC` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-public-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-resource-index`", + "type": "string", + "const": "fs:allow-resource-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-resource-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-resource-recursive`", + "type": "string", + "const": "fs:allow-resource-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-resource-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$RESOURCE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-resource`", + "type": "string", + "const": "fs:allow-resource-read", + "markdownDescription": "This allows non-recursive read access to the `$RESOURCE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-resource`" + }, + { + "description": "This allows full recursive read access to the complete `$RESOURCE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-resource-recursive`", + "type": "string", + "const": "fs:allow-resource-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$RESOURCE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-resource-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$RESOURCE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-resource`", + "type": "string", + "const": "fs:allow-resource-write", + "markdownDescription": "This allows non-recursive write access to the `$RESOURCE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-resource`" + }, + { + "description": "This allows full recursive write access to the complete `$RESOURCE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-resource-recursive`", + "type": "string", + "const": "fs:allow-resource-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$RESOURCE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-resource-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-runtime-index`", + "type": "string", + "const": "fs:allow-runtime-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-runtime-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-runtime-recursive`", + "type": "string", + "const": "fs:allow-runtime-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-runtime-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$RUNTIME` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-runtime`", + "type": "string", + "const": "fs:allow-runtime-read", + "markdownDescription": "This allows non-recursive read access to the `$RUNTIME` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-runtime`" + }, + { + "description": "This allows full recursive read access to the complete `$RUNTIME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-runtime-recursive`", + "type": "string", + "const": "fs:allow-runtime-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$RUNTIME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-runtime-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$RUNTIME` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-runtime`", + "type": "string", + "const": "fs:allow-runtime-write", + "markdownDescription": "This allows non-recursive write access to the `$RUNTIME` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-runtime`" + }, + { + "description": "This allows full recursive write access to the complete `$RUNTIME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-runtime-recursive`", + "type": "string", + "const": "fs:allow-runtime-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$RUNTIME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-runtime-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-temp-index`", + "type": "string", + "const": "fs:allow-temp-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-temp-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-temp-recursive`", + "type": "string", + "const": "fs:allow-temp-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-temp-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$TEMP` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-temp`", + "type": "string", + "const": "fs:allow-temp-read", + "markdownDescription": "This allows non-recursive read access to the `$TEMP` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-temp`" + }, + { + "description": "This allows full recursive read access to the complete `$TEMP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-temp-recursive`", + "type": "string", + "const": "fs:allow-temp-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$TEMP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-temp-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$TEMP` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-temp`", + "type": "string", + "const": "fs:allow-temp-write", + "markdownDescription": "This allows non-recursive write access to the `$TEMP` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-temp`" + }, + { + "description": "This allows full recursive write access to the complete `$TEMP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-temp-recursive`", + "type": "string", + "const": "fs:allow-temp-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$TEMP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-temp-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-template-index`", + "type": "string", + "const": "fs:allow-template-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-template-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-template-recursive`", + "type": "string", + "const": "fs:allow-template-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-template-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$TEMPLATE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-template`", + "type": "string", + "const": "fs:allow-template-read", + "markdownDescription": "This allows non-recursive read access to the `$TEMPLATE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-template`" + }, + { + "description": "This allows full recursive read access to the complete `$TEMPLATE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-template-recursive`", + "type": "string", + "const": "fs:allow-template-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$TEMPLATE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-template-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$TEMPLATE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-template`", + "type": "string", + "const": "fs:allow-template-write", + "markdownDescription": "This allows non-recursive write access to the `$TEMPLATE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-template`" + }, + { + "description": "This allows full recursive write access to the complete `$TEMPLATE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-template-recursive`", + "type": "string", + "const": "fs:allow-template-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$TEMPLATE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-template-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-video-index`", + "type": "string", + "const": "fs:allow-video-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-video-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-video-recursive`", + "type": "string", + "const": "fs:allow-video-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-video-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$VIDEO` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-video`", + "type": "string", + "const": "fs:allow-video-read", + "markdownDescription": "This allows non-recursive read access to the `$VIDEO` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-video`" + }, + { + "description": "This allows full recursive read access to the complete `$VIDEO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-video-recursive`", + "type": "string", + "const": "fs:allow-video-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$VIDEO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-video-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$VIDEO` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-video`", + "type": "string", + "const": "fs:allow-video-write", + "markdownDescription": "This allows non-recursive write access to the `$VIDEO` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-video`" + }, + { + "description": "This allows full recursive write access to the complete `$VIDEO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-video-recursive`", + "type": "string", + "const": "fs:allow-video-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$VIDEO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-video-recursive`" + }, + { + "description": "This denies access to dangerous Tauri relevant files and folders by default.\n#### This permission set includes:\n\n- `deny-webview-data-linux`\n- `deny-webview-data-windows`", + "type": "string", + "const": "fs:deny-default", + "markdownDescription": "This denies access to dangerous Tauri relevant files and folders by default.\n#### This permission set includes:\n\n- `deny-webview-data-linux`\n- `deny-webview-data-windows`" + }, + { + "description": "Enables the copy_file command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-copy-file", + "markdownDescription": "Enables the copy_file command without any pre-configured scope." + }, + { + "description": "Enables the create command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-create", + "markdownDescription": "Enables the create command without any pre-configured scope." + }, + { + "description": "Enables the exists command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-exists", + "markdownDescription": "Enables the exists command without any pre-configured scope." + }, + { + "description": "Enables the fstat command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-fstat", + "markdownDescription": "Enables the fstat command without any pre-configured scope." + }, + { + "description": "Enables the ftruncate command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-ftruncate", + "markdownDescription": "Enables the ftruncate command without any pre-configured scope." + }, + { + "description": "Enables the lstat command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-lstat", + "markdownDescription": "Enables the lstat command without any pre-configured scope." + }, + { + "description": "Enables the mkdir command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-mkdir", + "markdownDescription": "Enables the mkdir command without any pre-configured scope." + }, + { + "description": "Enables the open command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-open", + "markdownDescription": "Enables the open command without any pre-configured scope." + }, + { + "description": "Enables the read command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-read", + "markdownDescription": "Enables the read command without any pre-configured scope." + }, + { + "description": "Enables the read_dir command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-read-dir", + "markdownDescription": "Enables the read_dir command without any pre-configured scope." + }, + { + "description": "Enables the read_file command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-read-file", + "markdownDescription": "Enables the read_file command without any pre-configured scope." + }, + { + "description": "Enables the read_text_file command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-read-text-file", + "markdownDescription": "Enables the read_text_file command without any pre-configured scope." + }, + { + "description": "Enables the read_text_file_lines command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-read-text-file-lines", + "markdownDescription": "Enables the read_text_file_lines command without any pre-configured scope." + }, + { + "description": "Enables the read_text_file_lines_next command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-read-text-file-lines-next", + "markdownDescription": "Enables the read_text_file_lines_next command without any pre-configured scope." + }, + { + "description": "Enables the remove command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-remove", + "markdownDescription": "Enables the remove command without any pre-configured scope." + }, + { + "description": "Enables the rename command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-rename", + "markdownDescription": "Enables the rename command without any pre-configured scope." + }, + { + "description": "Enables the seek command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-seek", + "markdownDescription": "Enables the seek command without any pre-configured scope." + }, + { + "description": "Enables the size command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-size", + "markdownDescription": "Enables the size command without any pre-configured scope." + }, + { + "description": "Enables the start_accessing_security_scoped_resource command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-start-accessing-security-scoped-resource", + "markdownDescription": "Enables the start_accessing_security_scoped_resource command without any pre-configured scope." + }, + { + "description": "Enables the stat command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-stat", + "markdownDescription": "Enables the stat command without any pre-configured scope." + }, + { + "description": "Enables the stop_accessing_security_scoped_resource command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-stop-accessing-security-scoped-resource", + "markdownDescription": "Enables the stop_accessing_security_scoped_resource command without any pre-configured scope." + }, + { + "description": "Enables the truncate command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-truncate", + "markdownDescription": "Enables the truncate command without any pre-configured scope." + }, + { + "description": "Enables the unwatch command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-unwatch", + "markdownDescription": "Enables the unwatch command without any pre-configured scope." + }, + { + "description": "Enables the watch command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-watch", + "markdownDescription": "Enables the watch command without any pre-configured scope." + }, + { + "description": "Enables the write command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-write", + "markdownDescription": "Enables the write command without any pre-configured scope." + }, + { + "description": "Enables the write_file command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-write-file", + "markdownDescription": "Enables the write_file command without any pre-configured scope." + }, + { + "description": "Enables the write_text_file command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-write-text-file", + "markdownDescription": "Enables the write_text_file command without any pre-configured scope." + }, + { + "description": "This permissions allows to create the application specific directories.\n", + "type": "string", + "const": "fs:create-app-specific-dirs", + "markdownDescription": "This permissions allows to create the application specific directories.\n" + }, + { + "description": "Denies the copy_file command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-copy-file", + "markdownDescription": "Denies the copy_file command without any pre-configured scope." + }, + { + "description": "Denies the create command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-create", + "markdownDescription": "Denies the create command without any pre-configured scope." + }, + { + "description": "Denies the exists command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-exists", + "markdownDescription": "Denies the exists command without any pre-configured scope." + }, + { + "description": "Denies the fstat command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-fstat", + "markdownDescription": "Denies the fstat command without any pre-configured scope." + }, + { + "description": "Denies the ftruncate command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-ftruncate", + "markdownDescription": "Denies the ftruncate command without any pre-configured scope." + }, + { + "description": "Denies the lstat command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-lstat", + "markdownDescription": "Denies the lstat command without any pre-configured scope." + }, + { + "description": "Denies the mkdir command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-mkdir", + "markdownDescription": "Denies the mkdir command without any pre-configured scope." + }, + { + "description": "Denies the open command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-open", + "markdownDescription": "Denies the open command without any pre-configured scope." + }, + { + "description": "Denies the read command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-read", + "markdownDescription": "Denies the read command without any pre-configured scope." + }, + { + "description": "Denies the read_dir command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-read-dir", + "markdownDescription": "Denies the read_dir command without any pre-configured scope." + }, + { + "description": "Denies the read_file command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-read-file", + "markdownDescription": "Denies the read_file command without any pre-configured scope." + }, + { + "description": "Denies the read_text_file command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-read-text-file", + "markdownDescription": "Denies the read_text_file command without any pre-configured scope." + }, + { + "description": "Denies the read_text_file_lines command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-read-text-file-lines", + "markdownDescription": "Denies the read_text_file_lines command without any pre-configured scope." + }, + { + "description": "Denies the read_text_file_lines_next command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-read-text-file-lines-next", + "markdownDescription": "Denies the read_text_file_lines_next command without any pre-configured scope." + }, + { + "description": "Denies the remove command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-remove", + "markdownDescription": "Denies the remove command without any pre-configured scope." + }, + { + "description": "Denies the rename command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-rename", + "markdownDescription": "Denies the rename command without any pre-configured scope." + }, + { + "description": "Denies the seek command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-seek", + "markdownDescription": "Denies the seek command without any pre-configured scope." + }, + { + "description": "Denies the size command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-size", + "markdownDescription": "Denies the size command without any pre-configured scope." + }, + { + "description": "Denies the start_accessing_security_scoped_resource command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-start-accessing-security-scoped-resource", + "markdownDescription": "Denies the start_accessing_security_scoped_resource command without any pre-configured scope." + }, + { + "description": "Denies the stat command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-stat", + "markdownDescription": "Denies the stat command without any pre-configured scope." + }, + { + "description": "Denies the stop_accessing_security_scoped_resource command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-stop-accessing-security-scoped-resource", + "markdownDescription": "Denies the stop_accessing_security_scoped_resource command without any pre-configured scope." + }, + { + "description": "Denies the truncate command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-truncate", + "markdownDescription": "Denies the truncate command without any pre-configured scope." + }, + { + "description": "Denies the unwatch command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-unwatch", + "markdownDescription": "Denies the unwatch command without any pre-configured scope." + }, + { + "description": "Denies the watch command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-watch", + "markdownDescription": "Denies the watch command without any pre-configured scope." + }, + { + "description": "This denies read access to the\n`$APPLOCALDATA` folder on linux as the webview data and configuration values are stored here.\nAllowing access can lead to sensitive information disclosure and should be well considered.", + "type": "string", + "const": "fs:deny-webview-data-linux", + "markdownDescription": "This denies read access to the\n`$APPLOCALDATA` folder on linux as the webview data and configuration values are stored here.\nAllowing access can lead to sensitive information disclosure and should be well considered." + }, + { + "description": "This denies read access to the\n`$APPLOCALDATA/EBWebView` folder on windows as the webview data and configuration values are stored here.\nAllowing access can lead to sensitive information disclosure and should be well considered.", + "type": "string", + "const": "fs:deny-webview-data-windows", + "markdownDescription": "This denies read access to the\n`$APPLOCALDATA/EBWebView` folder on windows as the webview data and configuration values are stored here.\nAllowing access can lead to sensitive information disclosure and should be well considered." + }, + { + "description": "Denies the write command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-write", + "markdownDescription": "Denies the write command without any pre-configured scope." + }, + { + "description": "Denies the write_file command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-write-file", + "markdownDescription": "Denies the write_file command without any pre-configured scope." + }, + { + "description": "Denies the write_text_file command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-write-text-file", + "markdownDescription": "Denies the write_text_file command without any pre-configured scope." + }, + { + "description": "This enables all read related commands without any pre-configured accessible paths.", + "type": "string", + "const": "fs:read-all", + "markdownDescription": "This enables all read related commands without any pre-configured accessible paths." + }, + { + "description": "This permission allows recursive read functionality on the application\nspecific base directories. \n", + "type": "string", + "const": "fs:read-app-specific-dirs-recursive", + "markdownDescription": "This permission allows recursive read functionality on the application\nspecific base directories. \n" + }, + { + "description": "This enables directory read and file metadata related commands without any pre-configured accessible paths.", + "type": "string", + "const": "fs:read-dirs", + "markdownDescription": "This enables directory read and file metadata related commands without any pre-configured accessible paths." + }, + { + "description": "This enables file read related commands without any pre-configured accessible paths.", + "type": "string", + "const": "fs:read-files", + "markdownDescription": "This enables file read related commands without any pre-configured accessible paths." + }, + { + "description": "This enables all index or metadata related commands without any pre-configured accessible paths.", + "type": "string", + "const": "fs:read-meta", + "markdownDescription": "This enables all index or metadata related commands without any pre-configured accessible paths." + }, + { + "description": "An empty permission you can use to modify the global scope.\n\n## Example\n\n```json\n{\n \"identifier\": \"read-documents\",\n \"windows\": [\"main\"],\n \"permissions\": [\n \"fs:allow-read\",\n {\n \"identifier\": \"fs:scope\",\n \"allow\": [\n \"$APPDATA/documents/**/*\"\n ],\n \"deny\": [\n \"$APPDATA/documents/secret.txt\"\n ]\n }\n ]\n}\n```\n", + "type": "string", + "const": "fs:scope", + "markdownDescription": "An empty permission you can use to modify the global scope.\n\n## Example\n\n```json\n{\n \"identifier\": \"read-documents\",\n \"windows\": [\"main\"],\n \"permissions\": [\n \"fs:allow-read\",\n {\n \"identifier\": \"fs:scope\",\n \"allow\": [\n \"$APPDATA/documents/**/*\"\n ],\n \"deny\": [\n \"$APPDATA/documents/secret.txt\"\n ]\n }\n ]\n}\n```\n" + }, + { + "description": "This scope permits access to all files and list content of top level directories in the application folders.", + "type": "string", + "const": "fs:scope-app", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the application folders." + }, + { + "description": "This scope permits to list all files and folders in the application directories.", + "type": "string", + "const": "fs:scope-app-index", + "markdownDescription": "This scope permits to list all files and folders in the application directories." + }, + { + "description": "This scope permits recursive access to the complete application folders, including sub directories and files.", + "type": "string", + "const": "fs:scope-app-recursive", + "markdownDescription": "This scope permits recursive access to the complete application folders, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$APPCACHE` folder.", + "type": "string", + "const": "fs:scope-appcache", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$APPCACHE` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$APPCACHE`folder.", + "type": "string", + "const": "fs:scope-appcache-index", + "markdownDescription": "This scope permits to list all files and folders in the `$APPCACHE`folder." + }, + { + "description": "This scope permits recursive access to the complete `$APPCACHE` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-appcache-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$APPCACHE` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$APPCONFIG` folder.", + "type": "string", + "const": "fs:scope-appconfig", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$APPCONFIG` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$APPCONFIG`folder.", + "type": "string", + "const": "fs:scope-appconfig-index", + "markdownDescription": "This scope permits to list all files and folders in the `$APPCONFIG`folder." + }, + { + "description": "This scope permits recursive access to the complete `$APPCONFIG` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-appconfig-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$APPCONFIG` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$APPDATA` folder.", + "type": "string", + "const": "fs:scope-appdata", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$APPDATA` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$APPDATA`folder.", + "type": "string", + "const": "fs:scope-appdata-index", + "markdownDescription": "This scope permits to list all files and folders in the `$APPDATA`folder." + }, + { + "description": "This scope permits recursive access to the complete `$APPDATA` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-appdata-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$APPDATA` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$APPLOCALDATA` folder.", + "type": "string", + "const": "fs:scope-applocaldata", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$APPLOCALDATA` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$APPLOCALDATA`folder.", + "type": "string", + "const": "fs:scope-applocaldata-index", + "markdownDescription": "This scope permits to list all files and folders in the `$APPLOCALDATA`folder." + }, + { + "description": "This scope permits recursive access to the complete `$APPLOCALDATA` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-applocaldata-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$APPLOCALDATA` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$APPLOG` folder.", + "type": "string", + "const": "fs:scope-applog", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$APPLOG` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$APPLOG`folder.", + "type": "string", + "const": "fs:scope-applog-index", + "markdownDescription": "This scope permits to list all files and folders in the `$APPLOG`folder." + }, + { + "description": "This scope permits recursive access to the complete `$APPLOG` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-applog-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$APPLOG` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$AUDIO` folder.", + "type": "string", + "const": "fs:scope-audio", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$AUDIO` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$AUDIO`folder.", + "type": "string", + "const": "fs:scope-audio-index", + "markdownDescription": "This scope permits to list all files and folders in the `$AUDIO`folder." + }, + { + "description": "This scope permits recursive access to the complete `$AUDIO` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-audio-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$AUDIO` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$CACHE` folder.", + "type": "string", + "const": "fs:scope-cache", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$CACHE` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$CACHE`folder.", + "type": "string", + "const": "fs:scope-cache-index", + "markdownDescription": "This scope permits to list all files and folders in the `$CACHE`folder." + }, + { + "description": "This scope permits recursive access to the complete `$CACHE` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-cache-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$CACHE` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$CONFIG` folder.", + "type": "string", + "const": "fs:scope-config", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$CONFIG` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$CONFIG`folder.", + "type": "string", + "const": "fs:scope-config-index", + "markdownDescription": "This scope permits to list all files and folders in the `$CONFIG`folder." + }, + { + "description": "This scope permits recursive access to the complete `$CONFIG` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-config-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$CONFIG` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$DATA` folder.", + "type": "string", + "const": "fs:scope-data", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$DATA` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$DATA`folder.", + "type": "string", + "const": "fs:scope-data-index", + "markdownDescription": "This scope permits to list all files and folders in the `$DATA`folder." + }, + { + "description": "This scope permits recursive access to the complete `$DATA` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-data-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$DATA` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$DESKTOP` folder.", + "type": "string", + "const": "fs:scope-desktop", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$DESKTOP` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$DESKTOP`folder.", + "type": "string", + "const": "fs:scope-desktop-index", + "markdownDescription": "This scope permits to list all files and folders in the `$DESKTOP`folder." + }, + { + "description": "This scope permits recursive access to the complete `$DESKTOP` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-desktop-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$DESKTOP` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$DOCUMENT` folder.", + "type": "string", + "const": "fs:scope-document", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$DOCUMENT` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$DOCUMENT`folder.", + "type": "string", + "const": "fs:scope-document-index", + "markdownDescription": "This scope permits to list all files and folders in the `$DOCUMENT`folder." + }, + { + "description": "This scope permits recursive access to the complete `$DOCUMENT` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-document-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$DOCUMENT` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$DOWNLOAD` folder.", + "type": "string", + "const": "fs:scope-download", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$DOWNLOAD` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$DOWNLOAD`folder.", + "type": "string", + "const": "fs:scope-download-index", + "markdownDescription": "This scope permits to list all files and folders in the `$DOWNLOAD`folder." + }, + { + "description": "This scope permits recursive access to the complete `$DOWNLOAD` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-download-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$DOWNLOAD` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$EXE` folder.", + "type": "string", + "const": "fs:scope-exe", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$EXE` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$EXE`folder.", + "type": "string", + "const": "fs:scope-exe-index", + "markdownDescription": "This scope permits to list all files and folders in the `$EXE`folder." + }, + { + "description": "This scope permits recursive access to the complete `$EXE` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-exe-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$EXE` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$FONT` folder.", + "type": "string", + "const": "fs:scope-font", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$FONT` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$FONT`folder.", + "type": "string", + "const": "fs:scope-font-index", + "markdownDescription": "This scope permits to list all files and folders in the `$FONT`folder." + }, + { + "description": "This scope permits recursive access to the complete `$FONT` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-font-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$FONT` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$HOME` folder.", + "type": "string", + "const": "fs:scope-home", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$HOME` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$HOME`folder.", + "type": "string", + "const": "fs:scope-home-index", + "markdownDescription": "This scope permits to list all files and folders in the `$HOME`folder." + }, + { + "description": "This scope permits recursive access to the complete `$HOME` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-home-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$HOME` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$LOCALDATA` folder.", + "type": "string", + "const": "fs:scope-localdata", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$LOCALDATA` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$LOCALDATA`folder.", + "type": "string", + "const": "fs:scope-localdata-index", + "markdownDescription": "This scope permits to list all files and folders in the `$LOCALDATA`folder." + }, + { + "description": "This scope permits recursive access to the complete `$LOCALDATA` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-localdata-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$LOCALDATA` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$LOG` folder.", + "type": "string", + "const": "fs:scope-log", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$LOG` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$LOG`folder.", + "type": "string", + "const": "fs:scope-log-index", + "markdownDescription": "This scope permits to list all files and folders in the `$LOG`folder." + }, + { + "description": "This scope permits recursive access to the complete `$LOG` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-log-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$LOG` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$PICTURE` folder.", + "type": "string", + "const": "fs:scope-picture", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$PICTURE` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$PICTURE`folder.", + "type": "string", + "const": "fs:scope-picture-index", + "markdownDescription": "This scope permits to list all files and folders in the `$PICTURE`folder." + }, + { + "description": "This scope permits recursive access to the complete `$PICTURE` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-picture-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$PICTURE` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$PUBLIC` folder.", + "type": "string", + "const": "fs:scope-public", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$PUBLIC` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$PUBLIC`folder.", + "type": "string", + "const": "fs:scope-public-index", + "markdownDescription": "This scope permits to list all files and folders in the `$PUBLIC`folder." + }, + { + "description": "This scope permits recursive access to the complete `$PUBLIC` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-public-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$PUBLIC` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$RESOURCE` folder.", + "type": "string", + "const": "fs:scope-resource", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$RESOURCE` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$RESOURCE`folder.", + "type": "string", + "const": "fs:scope-resource-index", + "markdownDescription": "This scope permits to list all files and folders in the `$RESOURCE`folder." + }, + { + "description": "This scope permits recursive access to the complete `$RESOURCE` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-resource-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$RESOURCE` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$RUNTIME` folder.", + "type": "string", + "const": "fs:scope-runtime", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$RUNTIME` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$RUNTIME`folder.", + "type": "string", + "const": "fs:scope-runtime-index", + "markdownDescription": "This scope permits to list all files and folders in the `$RUNTIME`folder." + }, + { + "description": "This scope permits recursive access to the complete `$RUNTIME` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-runtime-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$RUNTIME` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$TEMP` folder.", + "type": "string", + "const": "fs:scope-temp", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$TEMP` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$TEMP`folder.", + "type": "string", + "const": "fs:scope-temp-index", + "markdownDescription": "This scope permits to list all files and folders in the `$TEMP`folder." + }, + { + "description": "This scope permits recursive access to the complete `$TEMP` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-temp-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$TEMP` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$TEMPLATE` folder.", + "type": "string", + "const": "fs:scope-template", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$TEMPLATE` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$TEMPLATE`folder.", + "type": "string", + "const": "fs:scope-template-index", + "markdownDescription": "This scope permits to list all files and folders in the `$TEMPLATE`folder." + }, + { + "description": "This scope permits recursive access to the complete `$TEMPLATE` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-template-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$TEMPLATE` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$VIDEO` folder.", + "type": "string", + "const": "fs:scope-video", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$VIDEO` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$VIDEO`folder.", + "type": "string", + "const": "fs:scope-video-index", + "markdownDescription": "This scope permits to list all files and folders in the `$VIDEO`folder." + }, + { + "description": "This scope permits recursive access to the complete `$VIDEO` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-video-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$VIDEO` folder, including sub directories and files." + }, + { + "description": "This enables all write related commands without any pre-configured accessible paths.", + "type": "string", + "const": "fs:write-all", + "markdownDescription": "This enables all write related commands without any pre-configured accessible paths." + }, + { + "description": "This enables all file write related commands without any pre-configured accessible paths.", + "type": "string", + "const": "fs:write-files", + "markdownDescription": "This enables all file write related commands without any pre-configured accessible paths." + }, + { + "description": "This permission set configures which\nshell functionality is exposed by default.\n\n#### Granted Permissions\n\nIt allows to use the `open` functionality with a reasonable\nscope pre-configured. It will allow opening `http(s)://`,\n`tel:` and `mailto:` links.\n\n#### This default permission set includes:\n\n- `allow-open`", + "type": "string", + "const": "shell:default", + "markdownDescription": "This permission set configures which\nshell functionality is exposed by default.\n\n#### Granted Permissions\n\nIt allows to use the `open` functionality with a reasonable\nscope pre-configured. It will allow opening `http(s)://`,\n`tel:` and `mailto:` links.\n\n#### This default permission set includes:\n\n- `allow-open`" + }, + { + "description": "Enables the execute command without any pre-configured scope.", + "type": "string", + "const": "shell:allow-execute", + "markdownDescription": "Enables the execute command without any pre-configured scope." + }, + { + "description": "Enables the kill command without any pre-configured scope.", + "type": "string", + "const": "shell:allow-kill", + "markdownDescription": "Enables the kill command without any pre-configured scope." + }, + { + "description": "Enables the open command without any pre-configured scope.", + "type": "string", + "const": "shell:allow-open", + "markdownDescription": "Enables the open command without any pre-configured scope." + }, + { + "description": "Enables the spawn command without any pre-configured scope.", + "type": "string", + "const": "shell:allow-spawn", + "markdownDescription": "Enables the spawn command without any pre-configured scope." + }, + { + "description": "Enables the stdin_write command without any pre-configured scope.", + "type": "string", + "const": "shell:allow-stdin-write", + "markdownDescription": "Enables the stdin_write command without any pre-configured scope." + }, + { + "description": "Denies the execute command without any pre-configured scope.", + "type": "string", + "const": "shell:deny-execute", + "markdownDescription": "Denies the execute command without any pre-configured scope." + }, + { + "description": "Denies the kill command without any pre-configured scope.", + "type": "string", + "const": "shell:deny-kill", + "markdownDescription": "Denies the kill command without any pre-configured scope." + }, + { + "description": "Denies the open command without any pre-configured scope.", + "type": "string", + "const": "shell:deny-open", + "markdownDescription": "Denies the open command without any pre-configured scope." + }, + { + "description": "Denies the spawn command without any pre-configured scope.", + "type": "string", + "const": "shell:deny-spawn", + "markdownDescription": "Denies the spawn command without any pre-configured scope." + }, + { + "description": "Denies the stdin_write command without any pre-configured scope.", + "type": "string", + "const": "shell:deny-stdin-write", + "markdownDescription": "Denies the stdin_write command without any pre-configured scope." + } + ] + }, + "Value": { + "description": "All supported ACL values.", + "anyOf": [ + { + "description": "Represents a null JSON value.", + "type": "null" + }, + { + "description": "Represents a [`bool`].", + "type": "boolean" + }, + { + "description": "Represents a valid ACL [`Number`].", + "allOf": [ + { + "$ref": "#/definitions/Number" + } + ] + }, + { + "description": "Represents a [`String`].", + "type": "string" + }, + { + "description": "Represents a list of other [`Value`]s.", + "type": "array", + "items": { + "$ref": "#/definitions/Value" + } + }, + { + "description": "Represents a map of [`String`] keys to [`Value`]s.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/Value" + } + } + ] + }, + "Number": { + "description": "A valid ACL number.", + "anyOf": [ + { + "description": "Represents an [`i64`].", + "type": "integer", + "format": "int64" + }, + { + "description": "Represents a [`f64`].", + "type": "number", + "format": "double" + } + ] + }, + "Target": { + "description": "Platform target.", + "oneOf": [ + { + "description": "MacOS.", + "type": "string", + "enum": [ + "macOS" + ] + }, + { + "description": "Windows.", + "type": "string", + "enum": [ + "windows" + ] + }, + { + "description": "Linux.", + "type": "string", + "enum": [ + "linux" + ] + }, + { + "description": "Android.", + "type": "string", + "enum": [ + "android" + ] + }, + { + "description": "iOS.", + "type": "string", + "enum": [ + "iOS" + ] + } + ] + }, + "ShellScopeEntryAllowedArg": { + "description": "A command argument allowed to be executed by the webview API.", + "anyOf": [ + { + "description": "A non-configurable argument that is passed to the command in the order it was specified.", + "type": "string" + }, + { + "description": "A variable that is set while calling the command from the webview API.", + "type": "object", + "required": [ + "validator" + ], + "properties": { + "raw": { + "description": "Marks the validator as a raw regex, meaning the plugin should not make any modification at runtime.\n\nThis means the regex will not match on the entire string by default, which might be exploited if your regex allow unexpected input to be considered valid. When using this option, make sure your regex is correct.", + "default": false, + "type": "boolean" + }, + "validator": { + "description": "[regex] validator to require passed values to conform to an expected input.\n\nThis will require the argument value passed to this variable to match the `validator` regex before it will be executed.\n\nThe regex string is by default surrounded by `^...$` to match the full string. For example the `https?://\\w+` regex would be registered as `^https?://\\w+$`.\n\n[regex]: ", + "type": "string" + } + }, + "additionalProperties": false + } + ] + }, + "ShellScopeEntryAllowedArgs": { + "description": "A set of command arguments allowed to be executed by the webview API.\n\nA value of `true` will allow any arguments to be passed to the command. `false` will disable all arguments. A list of [`ShellScopeEntryAllowedArg`] will set those arguments as the only valid arguments to be passed to the attached command configuration.", + "anyOf": [ + { + "description": "Use a simple boolean to allow all or disable all arguments to this command configuration.", + "type": "boolean" + }, + { + "description": "A specific set of [`ShellScopeEntryAllowedArg`] that are valid to call for the command configuration.", + "type": "array", + "items": { + "$ref": "#/definitions/ShellScopeEntryAllowedArg" + } + } + ] + } + } +} \ No newline at end of file diff --git a/posimai-guard-app/src-tauri/gen/schemas/windows-schema.json b/posimai-guard-app/src-tauri/gen/schemas/windows-schema.json new file mode 100644 index 00000000..c8247831 --- /dev/null +++ b/posimai-guard-app/src-tauri/gen/schemas/windows-schema.json @@ -0,0 +1,6206 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "CapabilityFile", + "description": "Capability formats accepted in a capability file.", + "anyOf": [ + { + "description": "A single capability.", + "allOf": [ + { + "$ref": "#/definitions/Capability" + } + ] + }, + { + "description": "A list of capabilities.", + "type": "array", + "items": { + "$ref": "#/definitions/Capability" + } + }, + { + "description": "A list of capabilities.", + "type": "object", + "required": [ + "capabilities" + ], + "properties": { + "capabilities": { + "description": "The list of capabilities.", + "type": "array", + "items": { + "$ref": "#/definitions/Capability" + } + } + } + } + ], + "definitions": { + "Capability": { + "description": "A grouping and boundary mechanism developers can use to isolate access to the IPC layer.\n\nIt controls application windows' and webviews' fine grained access to the Tauri core, application, or plugin commands. If a webview or its window is not matching any capability then it has no access to the IPC layer at all.\n\nThis can be done to create groups of windows, based on their required system access, which can reduce impact of frontend vulnerabilities in less privileged windows. Windows can be added to a capability by exact name (e.g. `main-window`) or glob patterns like `*` or `admin-*`. A Window can have none, one, or multiple associated capabilities.\n\n## Example\n\n```json { \"identifier\": \"main-user-files-write\", \"description\": \"This capability allows the `main` window on macOS and Windows access to `filesystem` write related commands and `dialog` commands to enable programmatic access to files selected by the user.\", \"windows\": [ \"main\" ], \"permissions\": [ \"core:default\", \"dialog:open\", { \"identifier\": \"fs:allow-write-text-file\", \"allow\": [{ \"path\": \"$HOME/test.txt\" }] }, ], \"platforms\": [\"macOS\",\"windows\"] } ```", + "type": "object", + "required": [ + "identifier", + "permissions" + ], + "properties": { + "identifier": { + "description": "Identifier of the capability.\n\n## Example\n\n`main-user-files-write`", + "type": "string" + }, + "description": { + "description": "Description of what the capability is intended to allow on associated windows.\n\nIt should contain a description of what the grouped permissions should allow.\n\n## Example\n\nThis capability allows the `main` window access to `filesystem` write related commands and `dialog` commands to enable programmatic access to files selected by the user.", + "default": "", + "type": "string" + }, + "remote": { + "description": "Configure remote URLs that can use the capability permissions.\n\nThis setting is optional and defaults to not being set, as our default use case is that the content is served from our local application.\n\n:::caution Make sure you understand the security implications of providing remote sources with local system access. :::\n\n## Example\n\n```json { \"urls\": [\"https://*.mydomain.dev\"] } ```", + "anyOf": [ + { + "$ref": "#/definitions/CapabilityRemote" + }, + { + "type": "null" + } + ] + }, + "local": { + "description": "Whether this capability is enabled for local app URLs or not. Defaults to `true`.", + "default": true, + "type": "boolean" + }, + "windows": { + "description": "List of windows that are affected by this capability. Can be a glob pattern.\n\nIf a window label matches any of the patterns in this list, the capability will be enabled on all the webviews of that window, regardless of the value of [`Self::webviews`].\n\nOn multiwebview windows, prefer specifying [`Self::webviews`] and omitting [`Self::windows`] for a fine grained access control.\n\n## Example\n\n`[\"main\"]`", + "type": "array", + "items": { + "type": "string" + } + }, + "webviews": { + "description": "List of webviews that are affected by this capability. Can be a glob pattern.\n\nThe capability will be enabled on all the webviews whose label matches any of the patterns in this list, regardless of whether the webview's window label matches a pattern in [`Self::windows`].\n\n## Example\n\n`[\"sub-webview-one\", \"sub-webview-two\"]`", + "type": "array", + "items": { + "type": "string" + } + }, + "permissions": { + "description": "List of permissions attached to this capability.\n\nMust include the plugin name as prefix in the form of `${plugin-name}:${permission-name}`. For commands directly implemented in the application itself only `${permission-name}` is required.\n\n## Example\n\n```json [ \"core:default\", \"shell:allow-open\", \"dialog:open\", { \"identifier\": \"fs:allow-write-text-file\", \"allow\": [{ \"path\": \"$HOME/test.txt\" }] } ] ```", + "type": "array", + "items": { + "$ref": "#/definitions/PermissionEntry" + }, + "uniqueItems": true + }, + "platforms": { + "description": "Limit which target platforms this capability applies to.\n\nBy default all platforms are targeted.\n\n## Example\n\n`[\"macOS\",\"windows\"]`", + "type": [ + "array", + "null" + ], + "items": { + "$ref": "#/definitions/Target" + } + } + } + }, + "CapabilityRemote": { + "description": "Configuration for remote URLs that are associated with the capability.", + "type": "object", + "required": [ + "urls" + ], + "properties": { + "urls": { + "description": "Remote domains this capability refers to using the [URLPattern standard](https://urlpattern.spec.whatwg.org/).\n\n## Examples\n\n- \"https://*.mydomain.dev\": allows subdomains of mydomain.dev - \"https://mydomain.dev/api/*\": allows any subpath of mydomain.dev/api", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "PermissionEntry": { + "description": "An entry for a permission value in a [`Capability`] can be either a raw permission [`Identifier`] or an object that references a permission and extends its scope.", + "anyOf": [ + { + "description": "Reference a permission or permission set by identifier.", + "allOf": [ + { + "$ref": "#/definitions/Identifier" + } + ] + }, + { + "description": "Reference a permission or permission set by identifier and extends its scope.", + "type": "object", + "allOf": [ + { + "if": { + "properties": { + "identifier": { + "anyOf": [ + { + "description": "This set of permissions describes the what kind of\nfile system access the `fs` plugin has enabled or denied by default.\n\n#### Granted Permissions\n\nThis default permission set enables read access to the\napplication specific directories (AppConfig, AppData, AppLocalData, AppCache,\nAppLog) and all files and sub directories created in it.\nThe location of these directories depends on the operating system,\nwhere the application is run.\n\nIn general these directories need to be manually created\nby the application at runtime, before accessing files or folders\nin it is possible.\n\nTherefore, it is also allowed to create all of these folders via\nthe `mkdir` command.\n\n#### Denied Permissions\n\nThis default permission set prevents access to critical components\nof the Tauri application by default.\nOn Windows the webview data folder access is denied.\n\n#### This default permission set includes:\n\n- `create-app-specific-dirs`\n- `read-app-specific-dirs-recursive`\n- `deny-default`", + "type": "string", + "const": "fs:default", + "markdownDescription": "This set of permissions describes the what kind of\nfile system access the `fs` plugin has enabled or denied by default.\n\n#### Granted Permissions\n\nThis default permission set enables read access to the\napplication specific directories (AppConfig, AppData, AppLocalData, AppCache,\nAppLog) and all files and sub directories created in it.\nThe location of these directories depends on the operating system,\nwhere the application is run.\n\nIn general these directories need to be manually created\nby the application at runtime, before accessing files or folders\nin it is possible.\n\nTherefore, it is also allowed to create all of these folders via\nthe `mkdir` command.\n\n#### Denied Permissions\n\nThis default permission set prevents access to critical components\nof the Tauri application by default.\nOn Windows the webview data folder access is denied.\n\n#### This default permission set includes:\n\n- `create-app-specific-dirs`\n- `read-app-specific-dirs-recursive`\n- `deny-default`" + }, + { + "description": "This allows non-recursive read access to metadata of the application folders, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-app-index`", + "type": "string", + "const": "fs:allow-app-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the application folders, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-app-index`" + }, + { + "description": "This allows full recursive read access to metadata of the application folders, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-app-recursive`", + "type": "string", + "const": "fs:allow-app-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the application folders, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-app-recursive`" + }, + { + "description": "This allows non-recursive read access to the application folders.\n#### This permission set includes:\n\n- `read-all`\n- `scope-app`", + "type": "string", + "const": "fs:allow-app-read", + "markdownDescription": "This allows non-recursive read access to the application folders.\n#### This permission set includes:\n\n- `read-all`\n- `scope-app`" + }, + { + "description": "This allows full recursive read access to the complete application folders, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-app-recursive`", + "type": "string", + "const": "fs:allow-app-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete application folders, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-app-recursive`" + }, + { + "description": "This allows non-recursive write access to the application folders.\n#### This permission set includes:\n\n- `write-all`\n- `scope-app`", + "type": "string", + "const": "fs:allow-app-write", + "markdownDescription": "This allows non-recursive write access to the application folders.\n#### This permission set includes:\n\n- `write-all`\n- `scope-app`" + }, + { + "description": "This allows full recursive write access to the complete application folders, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-app-recursive`", + "type": "string", + "const": "fs:allow-app-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete application folders, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-app-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appcache-index`", + "type": "string", + "const": "fs:allow-appcache-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appcache-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appcache-recursive`", + "type": "string", + "const": "fs:allow-appcache-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appcache-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$APPCACHE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appcache`", + "type": "string", + "const": "fs:allow-appcache-read", + "markdownDescription": "This allows non-recursive read access to the `$APPCACHE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appcache`" + }, + { + "description": "This allows full recursive read access to the complete `$APPCACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appcache-recursive`", + "type": "string", + "const": "fs:allow-appcache-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$APPCACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appcache-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$APPCACHE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appcache`", + "type": "string", + "const": "fs:allow-appcache-write", + "markdownDescription": "This allows non-recursive write access to the `$APPCACHE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appcache`" + }, + { + "description": "This allows full recursive write access to the complete `$APPCACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appcache-recursive`", + "type": "string", + "const": "fs:allow-appcache-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$APPCACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appcache-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appconfig-index`", + "type": "string", + "const": "fs:allow-appconfig-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appconfig-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appconfig-recursive`", + "type": "string", + "const": "fs:allow-appconfig-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appconfig-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$APPCONFIG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appconfig`", + "type": "string", + "const": "fs:allow-appconfig-read", + "markdownDescription": "This allows non-recursive read access to the `$APPCONFIG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appconfig`" + }, + { + "description": "This allows full recursive read access to the complete `$APPCONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appconfig-recursive`", + "type": "string", + "const": "fs:allow-appconfig-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$APPCONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appconfig-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$APPCONFIG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appconfig`", + "type": "string", + "const": "fs:allow-appconfig-write", + "markdownDescription": "This allows non-recursive write access to the `$APPCONFIG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appconfig`" + }, + { + "description": "This allows full recursive write access to the complete `$APPCONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appconfig-recursive`", + "type": "string", + "const": "fs:allow-appconfig-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$APPCONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appconfig-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appdata-index`", + "type": "string", + "const": "fs:allow-appdata-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appdata-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appdata-recursive`", + "type": "string", + "const": "fs:allow-appdata-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appdata-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$APPDATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appdata`", + "type": "string", + "const": "fs:allow-appdata-read", + "markdownDescription": "This allows non-recursive read access to the `$APPDATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appdata`" + }, + { + "description": "This allows full recursive read access to the complete `$APPDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appdata-recursive`", + "type": "string", + "const": "fs:allow-appdata-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$APPDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appdata-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$APPDATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appdata`", + "type": "string", + "const": "fs:allow-appdata-write", + "markdownDescription": "This allows non-recursive write access to the `$APPDATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appdata`" + }, + { + "description": "This allows full recursive write access to the complete `$APPDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appdata-recursive`", + "type": "string", + "const": "fs:allow-appdata-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$APPDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appdata-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applocaldata-index`", + "type": "string", + "const": "fs:allow-applocaldata-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applocaldata-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applocaldata-recursive`", + "type": "string", + "const": "fs:allow-applocaldata-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applocaldata-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$APPLOCALDATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applocaldata`", + "type": "string", + "const": "fs:allow-applocaldata-read", + "markdownDescription": "This allows non-recursive read access to the `$APPLOCALDATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applocaldata`" + }, + { + "description": "This allows full recursive read access to the complete `$APPLOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applocaldata-recursive`", + "type": "string", + "const": "fs:allow-applocaldata-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$APPLOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applocaldata-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$APPLOCALDATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applocaldata`", + "type": "string", + "const": "fs:allow-applocaldata-write", + "markdownDescription": "This allows non-recursive write access to the `$APPLOCALDATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applocaldata`" + }, + { + "description": "This allows full recursive write access to the complete `$APPLOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applocaldata-recursive`", + "type": "string", + "const": "fs:allow-applocaldata-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$APPLOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applocaldata-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applog-index`", + "type": "string", + "const": "fs:allow-applog-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applog-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applog-recursive`", + "type": "string", + "const": "fs:allow-applog-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applog-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$APPLOG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applog`", + "type": "string", + "const": "fs:allow-applog-read", + "markdownDescription": "This allows non-recursive read access to the `$APPLOG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applog`" + }, + { + "description": "This allows full recursive read access to the complete `$APPLOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applog-recursive`", + "type": "string", + "const": "fs:allow-applog-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$APPLOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applog-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$APPLOG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applog`", + "type": "string", + "const": "fs:allow-applog-write", + "markdownDescription": "This allows non-recursive write access to the `$APPLOG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applog`" + }, + { + "description": "This allows full recursive write access to the complete `$APPLOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applog-recursive`", + "type": "string", + "const": "fs:allow-applog-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$APPLOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applog-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-audio-index`", + "type": "string", + "const": "fs:allow-audio-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-audio-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-audio-recursive`", + "type": "string", + "const": "fs:allow-audio-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-audio-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$AUDIO` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-audio`", + "type": "string", + "const": "fs:allow-audio-read", + "markdownDescription": "This allows non-recursive read access to the `$AUDIO` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-audio`" + }, + { + "description": "This allows full recursive read access to the complete `$AUDIO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-audio-recursive`", + "type": "string", + "const": "fs:allow-audio-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$AUDIO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-audio-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$AUDIO` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-audio`", + "type": "string", + "const": "fs:allow-audio-write", + "markdownDescription": "This allows non-recursive write access to the `$AUDIO` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-audio`" + }, + { + "description": "This allows full recursive write access to the complete `$AUDIO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-audio-recursive`", + "type": "string", + "const": "fs:allow-audio-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$AUDIO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-audio-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-cache-index`", + "type": "string", + "const": "fs:allow-cache-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-cache-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-cache-recursive`", + "type": "string", + "const": "fs:allow-cache-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-cache-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$CACHE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-cache`", + "type": "string", + "const": "fs:allow-cache-read", + "markdownDescription": "This allows non-recursive read access to the `$CACHE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-cache`" + }, + { + "description": "This allows full recursive read access to the complete `$CACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-cache-recursive`", + "type": "string", + "const": "fs:allow-cache-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$CACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-cache-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$CACHE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-cache`", + "type": "string", + "const": "fs:allow-cache-write", + "markdownDescription": "This allows non-recursive write access to the `$CACHE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-cache`" + }, + { + "description": "This allows full recursive write access to the complete `$CACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-cache-recursive`", + "type": "string", + "const": "fs:allow-cache-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$CACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-cache-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-config-index`", + "type": "string", + "const": "fs:allow-config-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-config-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-config-recursive`", + "type": "string", + "const": "fs:allow-config-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-config-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$CONFIG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-config`", + "type": "string", + "const": "fs:allow-config-read", + "markdownDescription": "This allows non-recursive read access to the `$CONFIG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-config`" + }, + { + "description": "This allows full recursive read access to the complete `$CONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-config-recursive`", + "type": "string", + "const": "fs:allow-config-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$CONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-config-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$CONFIG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-config`", + "type": "string", + "const": "fs:allow-config-write", + "markdownDescription": "This allows non-recursive write access to the `$CONFIG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-config`" + }, + { + "description": "This allows full recursive write access to the complete `$CONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-config-recursive`", + "type": "string", + "const": "fs:allow-config-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$CONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-config-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$DATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-data-index`", + "type": "string", + "const": "fs:allow-data-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$DATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-data-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$DATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-data-recursive`", + "type": "string", + "const": "fs:allow-data-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$DATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-data-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$DATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-data`", + "type": "string", + "const": "fs:allow-data-read", + "markdownDescription": "This allows non-recursive read access to the `$DATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-data`" + }, + { + "description": "This allows full recursive read access to the complete `$DATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-data-recursive`", + "type": "string", + "const": "fs:allow-data-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$DATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-data-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$DATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-data`", + "type": "string", + "const": "fs:allow-data-write", + "markdownDescription": "This allows non-recursive write access to the `$DATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-data`" + }, + { + "description": "This allows full recursive write access to the complete `$DATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-data-recursive`", + "type": "string", + "const": "fs:allow-data-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$DATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-data-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-desktop-index`", + "type": "string", + "const": "fs:allow-desktop-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-desktop-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-desktop-recursive`", + "type": "string", + "const": "fs:allow-desktop-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-desktop-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$DESKTOP` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-desktop`", + "type": "string", + "const": "fs:allow-desktop-read", + "markdownDescription": "This allows non-recursive read access to the `$DESKTOP` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-desktop`" + }, + { + "description": "This allows full recursive read access to the complete `$DESKTOP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-desktop-recursive`", + "type": "string", + "const": "fs:allow-desktop-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$DESKTOP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-desktop-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$DESKTOP` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-desktop`", + "type": "string", + "const": "fs:allow-desktop-write", + "markdownDescription": "This allows non-recursive write access to the `$DESKTOP` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-desktop`" + }, + { + "description": "This allows full recursive write access to the complete `$DESKTOP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-desktop-recursive`", + "type": "string", + "const": "fs:allow-desktop-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$DESKTOP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-desktop-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-document-index`", + "type": "string", + "const": "fs:allow-document-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-document-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-document-recursive`", + "type": "string", + "const": "fs:allow-document-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-document-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$DOCUMENT` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-document`", + "type": "string", + "const": "fs:allow-document-read", + "markdownDescription": "This allows non-recursive read access to the `$DOCUMENT` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-document`" + }, + { + "description": "This allows full recursive read access to the complete `$DOCUMENT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-document-recursive`", + "type": "string", + "const": "fs:allow-document-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$DOCUMENT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-document-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$DOCUMENT` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-document`", + "type": "string", + "const": "fs:allow-document-write", + "markdownDescription": "This allows non-recursive write access to the `$DOCUMENT` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-document`" + }, + { + "description": "This allows full recursive write access to the complete `$DOCUMENT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-document-recursive`", + "type": "string", + "const": "fs:allow-document-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$DOCUMENT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-document-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-download-index`", + "type": "string", + "const": "fs:allow-download-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-download-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-download-recursive`", + "type": "string", + "const": "fs:allow-download-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-download-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$DOWNLOAD` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-download`", + "type": "string", + "const": "fs:allow-download-read", + "markdownDescription": "This allows non-recursive read access to the `$DOWNLOAD` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-download`" + }, + { + "description": "This allows full recursive read access to the complete `$DOWNLOAD` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-download-recursive`", + "type": "string", + "const": "fs:allow-download-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$DOWNLOAD` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-download-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$DOWNLOAD` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-download`", + "type": "string", + "const": "fs:allow-download-write", + "markdownDescription": "This allows non-recursive write access to the `$DOWNLOAD` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-download`" + }, + { + "description": "This allows full recursive write access to the complete `$DOWNLOAD` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-download-recursive`", + "type": "string", + "const": "fs:allow-download-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$DOWNLOAD` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-download-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$EXE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-exe-index`", + "type": "string", + "const": "fs:allow-exe-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$EXE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-exe-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$EXE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-exe-recursive`", + "type": "string", + "const": "fs:allow-exe-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$EXE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-exe-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$EXE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-exe`", + "type": "string", + "const": "fs:allow-exe-read", + "markdownDescription": "This allows non-recursive read access to the `$EXE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-exe`" + }, + { + "description": "This allows full recursive read access to the complete `$EXE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-exe-recursive`", + "type": "string", + "const": "fs:allow-exe-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$EXE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-exe-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$EXE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-exe`", + "type": "string", + "const": "fs:allow-exe-write", + "markdownDescription": "This allows non-recursive write access to the `$EXE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-exe`" + }, + { + "description": "This allows full recursive write access to the complete `$EXE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-exe-recursive`", + "type": "string", + "const": "fs:allow-exe-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$EXE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-exe-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$FONT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-font-index`", + "type": "string", + "const": "fs:allow-font-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$FONT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-font-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$FONT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-font-recursive`", + "type": "string", + "const": "fs:allow-font-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$FONT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-font-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$FONT` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-font`", + "type": "string", + "const": "fs:allow-font-read", + "markdownDescription": "This allows non-recursive read access to the `$FONT` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-font`" + }, + { + "description": "This allows full recursive read access to the complete `$FONT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-font-recursive`", + "type": "string", + "const": "fs:allow-font-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$FONT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-font-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$FONT` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-font`", + "type": "string", + "const": "fs:allow-font-write", + "markdownDescription": "This allows non-recursive write access to the `$FONT` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-font`" + }, + { + "description": "This allows full recursive write access to the complete `$FONT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-font-recursive`", + "type": "string", + "const": "fs:allow-font-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$FONT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-font-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$HOME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-home-index`", + "type": "string", + "const": "fs:allow-home-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$HOME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-home-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$HOME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-home-recursive`", + "type": "string", + "const": "fs:allow-home-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$HOME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-home-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$HOME` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-home`", + "type": "string", + "const": "fs:allow-home-read", + "markdownDescription": "This allows non-recursive read access to the `$HOME` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-home`" + }, + { + "description": "This allows full recursive read access to the complete `$HOME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-home-recursive`", + "type": "string", + "const": "fs:allow-home-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$HOME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-home-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$HOME` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-home`", + "type": "string", + "const": "fs:allow-home-write", + "markdownDescription": "This allows non-recursive write access to the `$HOME` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-home`" + }, + { + "description": "This allows full recursive write access to the complete `$HOME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-home-recursive`", + "type": "string", + "const": "fs:allow-home-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$HOME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-home-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-localdata-index`", + "type": "string", + "const": "fs:allow-localdata-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-localdata-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-localdata-recursive`", + "type": "string", + "const": "fs:allow-localdata-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-localdata-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$LOCALDATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-localdata`", + "type": "string", + "const": "fs:allow-localdata-read", + "markdownDescription": "This allows non-recursive read access to the `$LOCALDATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-localdata`" + }, + { + "description": "This allows full recursive read access to the complete `$LOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-localdata-recursive`", + "type": "string", + "const": "fs:allow-localdata-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$LOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-localdata-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$LOCALDATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-localdata`", + "type": "string", + "const": "fs:allow-localdata-write", + "markdownDescription": "This allows non-recursive write access to the `$LOCALDATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-localdata`" + }, + { + "description": "This allows full recursive write access to the complete `$LOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-localdata-recursive`", + "type": "string", + "const": "fs:allow-localdata-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$LOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-localdata-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$LOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-log-index`", + "type": "string", + "const": "fs:allow-log-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$LOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-log-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$LOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-log-recursive`", + "type": "string", + "const": "fs:allow-log-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$LOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-log-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$LOG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-log`", + "type": "string", + "const": "fs:allow-log-read", + "markdownDescription": "This allows non-recursive read access to the `$LOG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-log`" + }, + { + "description": "This allows full recursive read access to the complete `$LOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-log-recursive`", + "type": "string", + "const": "fs:allow-log-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$LOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-log-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$LOG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-log`", + "type": "string", + "const": "fs:allow-log-write", + "markdownDescription": "This allows non-recursive write access to the `$LOG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-log`" + }, + { + "description": "This allows full recursive write access to the complete `$LOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-log-recursive`", + "type": "string", + "const": "fs:allow-log-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$LOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-log-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-picture-index`", + "type": "string", + "const": "fs:allow-picture-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-picture-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-picture-recursive`", + "type": "string", + "const": "fs:allow-picture-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-picture-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$PICTURE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-picture`", + "type": "string", + "const": "fs:allow-picture-read", + "markdownDescription": "This allows non-recursive read access to the `$PICTURE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-picture`" + }, + { + "description": "This allows full recursive read access to the complete `$PICTURE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-picture-recursive`", + "type": "string", + "const": "fs:allow-picture-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$PICTURE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-picture-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$PICTURE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-picture`", + "type": "string", + "const": "fs:allow-picture-write", + "markdownDescription": "This allows non-recursive write access to the `$PICTURE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-picture`" + }, + { + "description": "This allows full recursive write access to the complete `$PICTURE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-picture-recursive`", + "type": "string", + "const": "fs:allow-picture-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$PICTURE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-picture-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-public-index`", + "type": "string", + "const": "fs:allow-public-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-public-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-public-recursive`", + "type": "string", + "const": "fs:allow-public-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-public-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$PUBLIC` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-public`", + "type": "string", + "const": "fs:allow-public-read", + "markdownDescription": "This allows non-recursive read access to the `$PUBLIC` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-public`" + }, + { + "description": "This allows full recursive read access to the complete `$PUBLIC` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-public-recursive`", + "type": "string", + "const": "fs:allow-public-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$PUBLIC` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-public-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$PUBLIC` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-public`", + "type": "string", + "const": "fs:allow-public-write", + "markdownDescription": "This allows non-recursive write access to the `$PUBLIC` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-public`" + }, + { + "description": "This allows full recursive write access to the complete `$PUBLIC` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-public-recursive`", + "type": "string", + "const": "fs:allow-public-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$PUBLIC` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-public-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-resource-index`", + "type": "string", + "const": "fs:allow-resource-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-resource-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-resource-recursive`", + "type": "string", + "const": "fs:allow-resource-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-resource-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$RESOURCE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-resource`", + "type": "string", + "const": "fs:allow-resource-read", + "markdownDescription": "This allows non-recursive read access to the `$RESOURCE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-resource`" + }, + { + "description": "This allows full recursive read access to the complete `$RESOURCE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-resource-recursive`", + "type": "string", + "const": "fs:allow-resource-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$RESOURCE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-resource-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$RESOURCE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-resource`", + "type": "string", + "const": "fs:allow-resource-write", + "markdownDescription": "This allows non-recursive write access to the `$RESOURCE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-resource`" + }, + { + "description": "This allows full recursive write access to the complete `$RESOURCE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-resource-recursive`", + "type": "string", + "const": "fs:allow-resource-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$RESOURCE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-resource-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-runtime-index`", + "type": "string", + "const": "fs:allow-runtime-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-runtime-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-runtime-recursive`", + "type": "string", + "const": "fs:allow-runtime-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-runtime-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$RUNTIME` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-runtime`", + "type": "string", + "const": "fs:allow-runtime-read", + "markdownDescription": "This allows non-recursive read access to the `$RUNTIME` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-runtime`" + }, + { + "description": "This allows full recursive read access to the complete `$RUNTIME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-runtime-recursive`", + "type": "string", + "const": "fs:allow-runtime-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$RUNTIME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-runtime-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$RUNTIME` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-runtime`", + "type": "string", + "const": "fs:allow-runtime-write", + "markdownDescription": "This allows non-recursive write access to the `$RUNTIME` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-runtime`" + }, + { + "description": "This allows full recursive write access to the complete `$RUNTIME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-runtime-recursive`", + "type": "string", + "const": "fs:allow-runtime-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$RUNTIME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-runtime-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-temp-index`", + "type": "string", + "const": "fs:allow-temp-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-temp-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-temp-recursive`", + "type": "string", + "const": "fs:allow-temp-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-temp-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$TEMP` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-temp`", + "type": "string", + "const": "fs:allow-temp-read", + "markdownDescription": "This allows non-recursive read access to the `$TEMP` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-temp`" + }, + { + "description": "This allows full recursive read access to the complete `$TEMP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-temp-recursive`", + "type": "string", + "const": "fs:allow-temp-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$TEMP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-temp-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$TEMP` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-temp`", + "type": "string", + "const": "fs:allow-temp-write", + "markdownDescription": "This allows non-recursive write access to the `$TEMP` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-temp`" + }, + { + "description": "This allows full recursive write access to the complete `$TEMP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-temp-recursive`", + "type": "string", + "const": "fs:allow-temp-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$TEMP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-temp-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-template-index`", + "type": "string", + "const": "fs:allow-template-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-template-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-template-recursive`", + "type": "string", + "const": "fs:allow-template-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-template-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$TEMPLATE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-template`", + "type": "string", + "const": "fs:allow-template-read", + "markdownDescription": "This allows non-recursive read access to the `$TEMPLATE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-template`" + }, + { + "description": "This allows full recursive read access to the complete `$TEMPLATE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-template-recursive`", + "type": "string", + "const": "fs:allow-template-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$TEMPLATE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-template-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$TEMPLATE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-template`", + "type": "string", + "const": "fs:allow-template-write", + "markdownDescription": "This allows non-recursive write access to the `$TEMPLATE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-template`" + }, + { + "description": "This allows full recursive write access to the complete `$TEMPLATE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-template-recursive`", + "type": "string", + "const": "fs:allow-template-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$TEMPLATE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-template-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-video-index`", + "type": "string", + "const": "fs:allow-video-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-video-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-video-recursive`", + "type": "string", + "const": "fs:allow-video-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-video-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$VIDEO` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-video`", + "type": "string", + "const": "fs:allow-video-read", + "markdownDescription": "This allows non-recursive read access to the `$VIDEO` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-video`" + }, + { + "description": "This allows full recursive read access to the complete `$VIDEO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-video-recursive`", + "type": "string", + "const": "fs:allow-video-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$VIDEO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-video-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$VIDEO` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-video`", + "type": "string", + "const": "fs:allow-video-write", + "markdownDescription": "This allows non-recursive write access to the `$VIDEO` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-video`" + }, + { + "description": "This allows full recursive write access to the complete `$VIDEO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-video-recursive`", + "type": "string", + "const": "fs:allow-video-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$VIDEO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-video-recursive`" + }, + { + "description": "This denies access to dangerous Tauri relevant files and folders by default.\n#### This permission set includes:\n\n- `deny-webview-data-linux`\n- `deny-webview-data-windows`", + "type": "string", + "const": "fs:deny-default", + "markdownDescription": "This denies access to dangerous Tauri relevant files and folders by default.\n#### This permission set includes:\n\n- `deny-webview-data-linux`\n- `deny-webview-data-windows`" + }, + { + "description": "Enables the copy_file command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-copy-file", + "markdownDescription": "Enables the copy_file command without any pre-configured scope." + }, + { + "description": "Enables the create command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-create", + "markdownDescription": "Enables the create command without any pre-configured scope." + }, + { + "description": "Enables the exists command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-exists", + "markdownDescription": "Enables the exists command without any pre-configured scope." + }, + { + "description": "Enables the fstat command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-fstat", + "markdownDescription": "Enables the fstat command without any pre-configured scope." + }, + { + "description": "Enables the ftruncate command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-ftruncate", + "markdownDescription": "Enables the ftruncate command without any pre-configured scope." + }, + { + "description": "Enables the lstat command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-lstat", + "markdownDescription": "Enables the lstat command without any pre-configured scope." + }, + { + "description": "Enables the mkdir command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-mkdir", + "markdownDescription": "Enables the mkdir command without any pre-configured scope." + }, + { + "description": "Enables the open command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-open", + "markdownDescription": "Enables the open command without any pre-configured scope." + }, + { + "description": "Enables the read command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-read", + "markdownDescription": "Enables the read command without any pre-configured scope." + }, + { + "description": "Enables the read_dir command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-read-dir", + "markdownDescription": "Enables the read_dir command without any pre-configured scope." + }, + { + "description": "Enables the read_file command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-read-file", + "markdownDescription": "Enables the read_file command without any pre-configured scope." + }, + { + "description": "Enables the read_text_file command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-read-text-file", + "markdownDescription": "Enables the read_text_file command without any pre-configured scope." + }, + { + "description": "Enables the read_text_file_lines command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-read-text-file-lines", + "markdownDescription": "Enables the read_text_file_lines command without any pre-configured scope." + }, + { + "description": "Enables the read_text_file_lines_next command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-read-text-file-lines-next", + "markdownDescription": "Enables the read_text_file_lines_next command without any pre-configured scope." + }, + { + "description": "Enables the remove command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-remove", + "markdownDescription": "Enables the remove command without any pre-configured scope." + }, + { + "description": "Enables the rename command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-rename", + "markdownDescription": "Enables the rename command without any pre-configured scope." + }, + { + "description": "Enables the seek command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-seek", + "markdownDescription": "Enables the seek command without any pre-configured scope." + }, + { + "description": "Enables the size command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-size", + "markdownDescription": "Enables the size command without any pre-configured scope." + }, + { + "description": "Enables the start_accessing_security_scoped_resource command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-start-accessing-security-scoped-resource", + "markdownDescription": "Enables the start_accessing_security_scoped_resource command without any pre-configured scope." + }, + { + "description": "Enables the stat command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-stat", + "markdownDescription": "Enables the stat command without any pre-configured scope." + }, + { + "description": "Enables the stop_accessing_security_scoped_resource command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-stop-accessing-security-scoped-resource", + "markdownDescription": "Enables the stop_accessing_security_scoped_resource command without any pre-configured scope." + }, + { + "description": "Enables the truncate command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-truncate", + "markdownDescription": "Enables the truncate command without any pre-configured scope." + }, + { + "description": "Enables the unwatch command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-unwatch", + "markdownDescription": "Enables the unwatch command without any pre-configured scope." + }, + { + "description": "Enables the watch command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-watch", + "markdownDescription": "Enables the watch command without any pre-configured scope." + }, + { + "description": "Enables the write command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-write", + "markdownDescription": "Enables the write command without any pre-configured scope." + }, + { + "description": "Enables the write_file command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-write-file", + "markdownDescription": "Enables the write_file command without any pre-configured scope." + }, + { + "description": "Enables the write_text_file command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-write-text-file", + "markdownDescription": "Enables the write_text_file command without any pre-configured scope." + }, + { + "description": "This permissions allows to create the application specific directories.\n", + "type": "string", + "const": "fs:create-app-specific-dirs", + "markdownDescription": "This permissions allows to create the application specific directories.\n" + }, + { + "description": "Denies the copy_file command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-copy-file", + "markdownDescription": "Denies the copy_file command without any pre-configured scope." + }, + { + "description": "Denies the create command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-create", + "markdownDescription": "Denies the create command without any pre-configured scope." + }, + { + "description": "Denies the exists command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-exists", + "markdownDescription": "Denies the exists command without any pre-configured scope." + }, + { + "description": "Denies the fstat command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-fstat", + "markdownDescription": "Denies the fstat command without any pre-configured scope." + }, + { + "description": "Denies the ftruncate command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-ftruncate", + "markdownDescription": "Denies the ftruncate command without any pre-configured scope." + }, + { + "description": "Denies the lstat command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-lstat", + "markdownDescription": "Denies the lstat command without any pre-configured scope." + }, + { + "description": "Denies the mkdir command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-mkdir", + "markdownDescription": "Denies the mkdir command without any pre-configured scope." + }, + { + "description": "Denies the open command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-open", + "markdownDescription": "Denies the open command without any pre-configured scope." + }, + { + "description": "Denies the read command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-read", + "markdownDescription": "Denies the read command without any pre-configured scope." + }, + { + "description": "Denies the read_dir command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-read-dir", + "markdownDescription": "Denies the read_dir command without any pre-configured scope." + }, + { + "description": "Denies the read_file command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-read-file", + "markdownDescription": "Denies the read_file command without any pre-configured scope." + }, + { + "description": "Denies the read_text_file command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-read-text-file", + "markdownDescription": "Denies the read_text_file command without any pre-configured scope." + }, + { + "description": "Denies the read_text_file_lines command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-read-text-file-lines", + "markdownDescription": "Denies the read_text_file_lines command without any pre-configured scope." + }, + { + "description": "Denies the read_text_file_lines_next command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-read-text-file-lines-next", + "markdownDescription": "Denies the read_text_file_lines_next command without any pre-configured scope." + }, + { + "description": "Denies the remove command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-remove", + "markdownDescription": "Denies the remove command without any pre-configured scope." + }, + { + "description": "Denies the rename command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-rename", + "markdownDescription": "Denies the rename command without any pre-configured scope." + }, + { + "description": "Denies the seek command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-seek", + "markdownDescription": "Denies the seek command without any pre-configured scope." + }, + { + "description": "Denies the size command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-size", + "markdownDescription": "Denies the size command without any pre-configured scope." + }, + { + "description": "Denies the start_accessing_security_scoped_resource command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-start-accessing-security-scoped-resource", + "markdownDescription": "Denies the start_accessing_security_scoped_resource command without any pre-configured scope." + }, + { + "description": "Denies the stat command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-stat", + "markdownDescription": "Denies the stat command without any pre-configured scope." + }, + { + "description": "Denies the stop_accessing_security_scoped_resource command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-stop-accessing-security-scoped-resource", + "markdownDescription": "Denies the stop_accessing_security_scoped_resource command without any pre-configured scope." + }, + { + "description": "Denies the truncate command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-truncate", + "markdownDescription": "Denies the truncate command without any pre-configured scope." + }, + { + "description": "Denies the unwatch command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-unwatch", + "markdownDescription": "Denies the unwatch command without any pre-configured scope." + }, + { + "description": "Denies the watch command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-watch", + "markdownDescription": "Denies the watch command without any pre-configured scope." + }, + { + "description": "This denies read access to the\n`$APPLOCALDATA` folder on linux as the webview data and configuration values are stored here.\nAllowing access can lead to sensitive information disclosure and should be well considered.", + "type": "string", + "const": "fs:deny-webview-data-linux", + "markdownDescription": "This denies read access to the\n`$APPLOCALDATA` folder on linux as the webview data and configuration values are stored here.\nAllowing access can lead to sensitive information disclosure and should be well considered." + }, + { + "description": "This denies read access to the\n`$APPLOCALDATA/EBWebView` folder on windows as the webview data and configuration values are stored here.\nAllowing access can lead to sensitive information disclosure and should be well considered.", + "type": "string", + "const": "fs:deny-webview-data-windows", + "markdownDescription": "This denies read access to the\n`$APPLOCALDATA/EBWebView` folder on windows as the webview data and configuration values are stored here.\nAllowing access can lead to sensitive information disclosure and should be well considered." + }, + { + "description": "Denies the write command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-write", + "markdownDescription": "Denies the write command without any pre-configured scope." + }, + { + "description": "Denies the write_file command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-write-file", + "markdownDescription": "Denies the write_file command without any pre-configured scope." + }, + { + "description": "Denies the write_text_file command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-write-text-file", + "markdownDescription": "Denies the write_text_file command without any pre-configured scope." + }, + { + "description": "This enables all read related commands without any pre-configured accessible paths.", + "type": "string", + "const": "fs:read-all", + "markdownDescription": "This enables all read related commands without any pre-configured accessible paths." + }, + { + "description": "This permission allows recursive read functionality on the application\nspecific base directories. \n", + "type": "string", + "const": "fs:read-app-specific-dirs-recursive", + "markdownDescription": "This permission allows recursive read functionality on the application\nspecific base directories. \n" + }, + { + "description": "This enables directory read and file metadata related commands without any pre-configured accessible paths.", + "type": "string", + "const": "fs:read-dirs", + "markdownDescription": "This enables directory read and file metadata related commands without any pre-configured accessible paths." + }, + { + "description": "This enables file read related commands without any pre-configured accessible paths.", + "type": "string", + "const": "fs:read-files", + "markdownDescription": "This enables file read related commands without any pre-configured accessible paths." + }, + { + "description": "This enables all index or metadata related commands without any pre-configured accessible paths.", + "type": "string", + "const": "fs:read-meta", + "markdownDescription": "This enables all index or metadata related commands without any pre-configured accessible paths." + }, + { + "description": "An empty permission you can use to modify the global scope.\n\n## Example\n\n```json\n{\n \"identifier\": \"read-documents\",\n \"windows\": [\"main\"],\n \"permissions\": [\n \"fs:allow-read\",\n {\n \"identifier\": \"fs:scope\",\n \"allow\": [\n \"$APPDATA/documents/**/*\"\n ],\n \"deny\": [\n \"$APPDATA/documents/secret.txt\"\n ]\n }\n ]\n}\n```\n", + "type": "string", + "const": "fs:scope", + "markdownDescription": "An empty permission you can use to modify the global scope.\n\n## Example\n\n```json\n{\n \"identifier\": \"read-documents\",\n \"windows\": [\"main\"],\n \"permissions\": [\n \"fs:allow-read\",\n {\n \"identifier\": \"fs:scope\",\n \"allow\": [\n \"$APPDATA/documents/**/*\"\n ],\n \"deny\": [\n \"$APPDATA/documents/secret.txt\"\n ]\n }\n ]\n}\n```\n" + }, + { + "description": "This scope permits access to all files and list content of top level directories in the application folders.", + "type": "string", + "const": "fs:scope-app", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the application folders." + }, + { + "description": "This scope permits to list all files and folders in the application directories.", + "type": "string", + "const": "fs:scope-app-index", + "markdownDescription": "This scope permits to list all files and folders in the application directories." + }, + { + "description": "This scope permits recursive access to the complete application folders, including sub directories and files.", + "type": "string", + "const": "fs:scope-app-recursive", + "markdownDescription": "This scope permits recursive access to the complete application folders, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$APPCACHE` folder.", + "type": "string", + "const": "fs:scope-appcache", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$APPCACHE` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$APPCACHE`folder.", + "type": "string", + "const": "fs:scope-appcache-index", + "markdownDescription": "This scope permits to list all files and folders in the `$APPCACHE`folder." + }, + { + "description": "This scope permits recursive access to the complete `$APPCACHE` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-appcache-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$APPCACHE` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$APPCONFIG` folder.", + "type": "string", + "const": "fs:scope-appconfig", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$APPCONFIG` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$APPCONFIG`folder.", + "type": "string", + "const": "fs:scope-appconfig-index", + "markdownDescription": "This scope permits to list all files and folders in the `$APPCONFIG`folder." + }, + { + "description": "This scope permits recursive access to the complete `$APPCONFIG` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-appconfig-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$APPCONFIG` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$APPDATA` folder.", + "type": "string", + "const": "fs:scope-appdata", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$APPDATA` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$APPDATA`folder.", + "type": "string", + "const": "fs:scope-appdata-index", + "markdownDescription": "This scope permits to list all files and folders in the `$APPDATA`folder." + }, + { + "description": "This scope permits recursive access to the complete `$APPDATA` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-appdata-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$APPDATA` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$APPLOCALDATA` folder.", + "type": "string", + "const": "fs:scope-applocaldata", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$APPLOCALDATA` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$APPLOCALDATA`folder.", + "type": "string", + "const": "fs:scope-applocaldata-index", + "markdownDescription": "This scope permits to list all files and folders in the `$APPLOCALDATA`folder." + }, + { + "description": "This scope permits recursive access to the complete `$APPLOCALDATA` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-applocaldata-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$APPLOCALDATA` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$APPLOG` folder.", + "type": "string", + "const": "fs:scope-applog", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$APPLOG` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$APPLOG`folder.", + "type": "string", + "const": "fs:scope-applog-index", + "markdownDescription": "This scope permits to list all files and folders in the `$APPLOG`folder." + }, + { + "description": "This scope permits recursive access to the complete `$APPLOG` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-applog-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$APPLOG` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$AUDIO` folder.", + "type": "string", + "const": "fs:scope-audio", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$AUDIO` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$AUDIO`folder.", + "type": "string", + "const": "fs:scope-audio-index", + "markdownDescription": "This scope permits to list all files and folders in the `$AUDIO`folder." + }, + { + "description": "This scope permits recursive access to the complete `$AUDIO` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-audio-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$AUDIO` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$CACHE` folder.", + "type": "string", + "const": "fs:scope-cache", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$CACHE` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$CACHE`folder.", + "type": "string", + "const": "fs:scope-cache-index", + "markdownDescription": "This scope permits to list all files and folders in the `$CACHE`folder." + }, + { + "description": "This scope permits recursive access to the complete `$CACHE` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-cache-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$CACHE` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$CONFIG` folder.", + "type": "string", + "const": "fs:scope-config", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$CONFIG` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$CONFIG`folder.", + "type": "string", + "const": "fs:scope-config-index", + "markdownDescription": "This scope permits to list all files and folders in the `$CONFIG`folder." + }, + { + "description": "This scope permits recursive access to the complete `$CONFIG` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-config-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$CONFIG` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$DATA` folder.", + "type": "string", + "const": "fs:scope-data", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$DATA` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$DATA`folder.", + "type": "string", + "const": "fs:scope-data-index", + "markdownDescription": "This scope permits to list all files and folders in the `$DATA`folder." + }, + { + "description": "This scope permits recursive access to the complete `$DATA` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-data-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$DATA` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$DESKTOP` folder.", + "type": "string", + "const": "fs:scope-desktop", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$DESKTOP` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$DESKTOP`folder.", + "type": "string", + "const": "fs:scope-desktop-index", + "markdownDescription": "This scope permits to list all files and folders in the `$DESKTOP`folder." + }, + { + "description": "This scope permits recursive access to the complete `$DESKTOP` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-desktop-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$DESKTOP` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$DOCUMENT` folder.", + "type": "string", + "const": "fs:scope-document", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$DOCUMENT` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$DOCUMENT`folder.", + "type": "string", + "const": "fs:scope-document-index", + "markdownDescription": "This scope permits to list all files and folders in the `$DOCUMENT`folder." + }, + { + "description": "This scope permits recursive access to the complete `$DOCUMENT` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-document-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$DOCUMENT` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$DOWNLOAD` folder.", + "type": "string", + "const": "fs:scope-download", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$DOWNLOAD` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$DOWNLOAD`folder.", + "type": "string", + "const": "fs:scope-download-index", + "markdownDescription": "This scope permits to list all files and folders in the `$DOWNLOAD`folder." + }, + { + "description": "This scope permits recursive access to the complete `$DOWNLOAD` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-download-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$DOWNLOAD` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$EXE` folder.", + "type": "string", + "const": "fs:scope-exe", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$EXE` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$EXE`folder.", + "type": "string", + "const": "fs:scope-exe-index", + "markdownDescription": "This scope permits to list all files and folders in the `$EXE`folder." + }, + { + "description": "This scope permits recursive access to the complete `$EXE` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-exe-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$EXE` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$FONT` folder.", + "type": "string", + "const": "fs:scope-font", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$FONT` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$FONT`folder.", + "type": "string", + "const": "fs:scope-font-index", + "markdownDescription": "This scope permits to list all files and folders in the `$FONT`folder." + }, + { + "description": "This scope permits recursive access to the complete `$FONT` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-font-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$FONT` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$HOME` folder.", + "type": "string", + "const": "fs:scope-home", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$HOME` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$HOME`folder.", + "type": "string", + "const": "fs:scope-home-index", + "markdownDescription": "This scope permits to list all files and folders in the `$HOME`folder." + }, + { + "description": "This scope permits recursive access to the complete `$HOME` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-home-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$HOME` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$LOCALDATA` folder.", + "type": "string", + "const": "fs:scope-localdata", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$LOCALDATA` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$LOCALDATA`folder.", + "type": "string", + "const": "fs:scope-localdata-index", + "markdownDescription": "This scope permits to list all files and folders in the `$LOCALDATA`folder." + }, + { + "description": "This scope permits recursive access to the complete `$LOCALDATA` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-localdata-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$LOCALDATA` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$LOG` folder.", + "type": "string", + "const": "fs:scope-log", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$LOG` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$LOG`folder.", + "type": "string", + "const": "fs:scope-log-index", + "markdownDescription": "This scope permits to list all files and folders in the `$LOG`folder." + }, + { + "description": "This scope permits recursive access to the complete `$LOG` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-log-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$LOG` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$PICTURE` folder.", + "type": "string", + "const": "fs:scope-picture", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$PICTURE` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$PICTURE`folder.", + "type": "string", + "const": "fs:scope-picture-index", + "markdownDescription": "This scope permits to list all files and folders in the `$PICTURE`folder." + }, + { + "description": "This scope permits recursive access to the complete `$PICTURE` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-picture-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$PICTURE` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$PUBLIC` folder.", + "type": "string", + "const": "fs:scope-public", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$PUBLIC` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$PUBLIC`folder.", + "type": "string", + "const": "fs:scope-public-index", + "markdownDescription": "This scope permits to list all files and folders in the `$PUBLIC`folder." + }, + { + "description": "This scope permits recursive access to the complete `$PUBLIC` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-public-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$PUBLIC` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$RESOURCE` folder.", + "type": "string", + "const": "fs:scope-resource", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$RESOURCE` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$RESOURCE`folder.", + "type": "string", + "const": "fs:scope-resource-index", + "markdownDescription": "This scope permits to list all files and folders in the `$RESOURCE`folder." + }, + { + "description": "This scope permits recursive access to the complete `$RESOURCE` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-resource-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$RESOURCE` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$RUNTIME` folder.", + "type": "string", + "const": "fs:scope-runtime", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$RUNTIME` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$RUNTIME`folder.", + "type": "string", + "const": "fs:scope-runtime-index", + "markdownDescription": "This scope permits to list all files and folders in the `$RUNTIME`folder." + }, + { + "description": "This scope permits recursive access to the complete `$RUNTIME` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-runtime-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$RUNTIME` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$TEMP` folder.", + "type": "string", + "const": "fs:scope-temp", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$TEMP` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$TEMP`folder.", + "type": "string", + "const": "fs:scope-temp-index", + "markdownDescription": "This scope permits to list all files and folders in the `$TEMP`folder." + }, + { + "description": "This scope permits recursive access to the complete `$TEMP` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-temp-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$TEMP` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$TEMPLATE` folder.", + "type": "string", + "const": "fs:scope-template", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$TEMPLATE` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$TEMPLATE`folder.", + "type": "string", + "const": "fs:scope-template-index", + "markdownDescription": "This scope permits to list all files and folders in the `$TEMPLATE`folder." + }, + { + "description": "This scope permits recursive access to the complete `$TEMPLATE` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-template-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$TEMPLATE` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$VIDEO` folder.", + "type": "string", + "const": "fs:scope-video", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$VIDEO` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$VIDEO`folder.", + "type": "string", + "const": "fs:scope-video-index", + "markdownDescription": "This scope permits to list all files and folders in the `$VIDEO`folder." + }, + { + "description": "This scope permits recursive access to the complete `$VIDEO` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-video-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$VIDEO` folder, including sub directories and files." + }, + { + "description": "This enables all write related commands without any pre-configured accessible paths.", + "type": "string", + "const": "fs:write-all", + "markdownDescription": "This enables all write related commands without any pre-configured accessible paths." + }, + { + "description": "This enables all file write related commands without any pre-configured accessible paths.", + "type": "string", + "const": "fs:write-files", + "markdownDescription": "This enables all file write related commands without any pre-configured accessible paths." + } + ] + } + } + }, + "then": { + "properties": { + "allow": { + "items": { + "title": "FsScopeEntry", + "description": "FS scope entry.", + "anyOf": [ + { + "description": "A path that can be accessed by the webview when using the fs APIs. FS scope path pattern.\n\nThe pattern can start with a variable that resolves to a system base directory. The variables are: `$AUDIO`, `$CACHE`, `$CONFIG`, `$DATA`, `$LOCALDATA`, `$DESKTOP`, `$DOCUMENT`, `$DOWNLOAD`, `$EXE`, `$FONT`, `$HOME`, `$PICTURE`, `$PUBLIC`, `$RUNTIME`, `$TEMPLATE`, `$VIDEO`, `$RESOURCE`, `$APP`, `$LOG`, `$TEMP`, `$APPCONFIG`, `$APPDATA`, `$APPLOCALDATA`, `$APPCACHE`, `$APPLOG`.", + "type": "string" + }, + { + "type": "object", + "required": [ + "path" + ], + "properties": { + "path": { + "description": "A path that can be accessed by the webview when using the fs APIs.\n\nThe pattern can start with a variable that resolves to a system base directory. The variables are: `$AUDIO`, `$CACHE`, `$CONFIG`, `$DATA`, `$LOCALDATA`, `$DESKTOP`, `$DOCUMENT`, `$DOWNLOAD`, `$EXE`, `$FONT`, `$HOME`, `$PICTURE`, `$PUBLIC`, `$RUNTIME`, `$TEMPLATE`, `$VIDEO`, `$RESOURCE`, `$APP`, `$LOG`, `$TEMP`, `$APPCONFIG`, `$APPDATA`, `$APPLOCALDATA`, `$APPCACHE`, `$APPLOG`.", + "type": "string" + } + } + } + ] + } + }, + "deny": { + "items": { + "title": "FsScopeEntry", + "description": "FS scope entry.", + "anyOf": [ + { + "description": "A path that can be accessed by the webview when using the fs APIs. FS scope path pattern.\n\nThe pattern can start with a variable that resolves to a system base directory. The variables are: `$AUDIO`, `$CACHE`, `$CONFIG`, `$DATA`, `$LOCALDATA`, `$DESKTOP`, `$DOCUMENT`, `$DOWNLOAD`, `$EXE`, `$FONT`, `$HOME`, `$PICTURE`, `$PUBLIC`, `$RUNTIME`, `$TEMPLATE`, `$VIDEO`, `$RESOURCE`, `$APP`, `$LOG`, `$TEMP`, `$APPCONFIG`, `$APPDATA`, `$APPLOCALDATA`, `$APPCACHE`, `$APPLOG`.", + "type": "string" + }, + { + "type": "object", + "required": [ + "path" + ], + "properties": { + "path": { + "description": "A path that can be accessed by the webview when using the fs APIs.\n\nThe pattern can start with a variable that resolves to a system base directory. The variables are: `$AUDIO`, `$CACHE`, `$CONFIG`, `$DATA`, `$LOCALDATA`, `$DESKTOP`, `$DOCUMENT`, `$DOWNLOAD`, `$EXE`, `$FONT`, `$HOME`, `$PICTURE`, `$PUBLIC`, `$RUNTIME`, `$TEMPLATE`, `$VIDEO`, `$RESOURCE`, `$APP`, `$LOG`, `$TEMP`, `$APPCONFIG`, `$APPDATA`, `$APPLOCALDATA`, `$APPCACHE`, `$APPLOG`.", + "type": "string" + } + } + } + ] + } + } + } + }, + "properties": { + "identifier": { + "description": "Identifier of the permission or permission set.", + "allOf": [ + { + "$ref": "#/definitions/Identifier" + } + ] + } + } + }, + { + "if": { + "properties": { + "identifier": { + "anyOf": [ + { + "description": "This permission set configures which\nshell functionality is exposed by default.\n\n#### Granted Permissions\n\nIt allows to use the `open` functionality with a reasonable\nscope pre-configured. It will allow opening `http(s)://`,\n`tel:` and `mailto:` links.\n\n#### This default permission set includes:\n\n- `allow-open`", + "type": "string", + "const": "shell:default", + "markdownDescription": "This permission set configures which\nshell functionality is exposed by default.\n\n#### Granted Permissions\n\nIt allows to use the `open` functionality with a reasonable\nscope pre-configured. It will allow opening `http(s)://`,\n`tel:` and `mailto:` links.\n\n#### This default permission set includes:\n\n- `allow-open`" + }, + { + "description": "Enables the execute command without any pre-configured scope.", + "type": "string", + "const": "shell:allow-execute", + "markdownDescription": "Enables the execute command without any pre-configured scope." + }, + { + "description": "Enables the kill command without any pre-configured scope.", + "type": "string", + "const": "shell:allow-kill", + "markdownDescription": "Enables the kill command without any pre-configured scope." + }, + { + "description": "Enables the open command without any pre-configured scope.", + "type": "string", + "const": "shell:allow-open", + "markdownDescription": "Enables the open command without any pre-configured scope." + }, + { + "description": "Enables the spawn command without any pre-configured scope.", + "type": "string", + "const": "shell:allow-spawn", + "markdownDescription": "Enables the spawn command without any pre-configured scope." + }, + { + "description": "Enables the stdin_write command without any pre-configured scope.", + "type": "string", + "const": "shell:allow-stdin-write", + "markdownDescription": "Enables the stdin_write command without any pre-configured scope." + }, + { + "description": "Denies the execute command without any pre-configured scope.", + "type": "string", + "const": "shell:deny-execute", + "markdownDescription": "Denies the execute command without any pre-configured scope." + }, + { + "description": "Denies the kill command without any pre-configured scope.", + "type": "string", + "const": "shell:deny-kill", + "markdownDescription": "Denies the kill command without any pre-configured scope." + }, + { + "description": "Denies the open command without any pre-configured scope.", + "type": "string", + "const": "shell:deny-open", + "markdownDescription": "Denies the open command without any pre-configured scope." + }, + { + "description": "Denies the spawn command without any pre-configured scope.", + "type": "string", + "const": "shell:deny-spawn", + "markdownDescription": "Denies the spawn command without any pre-configured scope." + }, + { + "description": "Denies the stdin_write command without any pre-configured scope.", + "type": "string", + "const": "shell:deny-stdin-write", + "markdownDescription": "Denies the stdin_write command without any pre-configured scope." + } + ] + } + } + }, + "then": { + "properties": { + "allow": { + "items": { + "title": "ShellScopeEntry", + "description": "Shell scope entry.", + "anyOf": [ + { + "type": "object", + "required": [ + "cmd", + "name" + ], + "properties": { + "args": { + "description": "The allowed arguments for the command execution.", + "allOf": [ + { + "$ref": "#/definitions/ShellScopeEntryAllowedArgs" + } + ] + }, + "cmd": { + "description": "The command name. It can start with a variable that resolves to a system base directory. The variables are: `$AUDIO`, `$CACHE`, `$CONFIG`, `$DATA`, `$LOCALDATA`, `$DESKTOP`, `$DOCUMENT`, `$DOWNLOAD`, `$EXE`, `$FONT`, `$HOME`, `$PICTURE`, `$PUBLIC`, `$RUNTIME`, `$TEMPLATE`, `$VIDEO`, `$RESOURCE`, `$LOG`, `$TEMP`, `$APPCONFIG`, `$APPDATA`, `$APPLOCALDATA`, `$APPCACHE`, `$APPLOG`.", + "type": "string" + }, + "name": { + "description": "The name for this allowed shell command configuration.\n\nThis name will be used inside of the webview API to call this command along with any specified arguments.", + "type": "string" + } + }, + "additionalProperties": false + }, + { + "type": "object", + "required": [ + "name", + "sidecar" + ], + "properties": { + "args": { + "description": "The allowed arguments for the command execution.", + "allOf": [ + { + "$ref": "#/definitions/ShellScopeEntryAllowedArgs" + } + ] + }, + "name": { + "description": "The name for this allowed shell command configuration.\n\nThis name will be used inside of the webview API to call this command along with any specified arguments.", + "type": "string" + }, + "sidecar": { + "description": "If this command is a sidecar command.", + "type": "boolean" + } + }, + "additionalProperties": false + } + ] + } + }, + "deny": { + "items": { + "title": "ShellScopeEntry", + "description": "Shell scope entry.", + "anyOf": [ + { + "type": "object", + "required": [ + "cmd", + "name" + ], + "properties": { + "args": { + "description": "The allowed arguments for the command execution.", + "allOf": [ + { + "$ref": "#/definitions/ShellScopeEntryAllowedArgs" + } + ] + }, + "cmd": { + "description": "The command name. It can start with a variable that resolves to a system base directory. The variables are: `$AUDIO`, `$CACHE`, `$CONFIG`, `$DATA`, `$LOCALDATA`, `$DESKTOP`, `$DOCUMENT`, `$DOWNLOAD`, `$EXE`, `$FONT`, `$HOME`, `$PICTURE`, `$PUBLIC`, `$RUNTIME`, `$TEMPLATE`, `$VIDEO`, `$RESOURCE`, `$LOG`, `$TEMP`, `$APPCONFIG`, `$APPDATA`, `$APPLOCALDATA`, `$APPCACHE`, `$APPLOG`.", + "type": "string" + }, + "name": { + "description": "The name for this allowed shell command configuration.\n\nThis name will be used inside of the webview API to call this command along with any specified arguments.", + "type": "string" + } + }, + "additionalProperties": false + }, + { + "type": "object", + "required": [ + "name", + "sidecar" + ], + "properties": { + "args": { + "description": "The allowed arguments for the command execution.", + "allOf": [ + { + "$ref": "#/definitions/ShellScopeEntryAllowedArgs" + } + ] + }, + "name": { + "description": "The name for this allowed shell command configuration.\n\nThis name will be used inside of the webview API to call this command along with any specified arguments.", + "type": "string" + }, + "sidecar": { + "description": "If this command is a sidecar command.", + "type": "boolean" + } + }, + "additionalProperties": false + } + ] + } + } + } + }, + "properties": { + "identifier": { + "description": "Identifier of the permission or permission set.", + "allOf": [ + { + "$ref": "#/definitions/Identifier" + } + ] + } + } + }, + { + "properties": { + "identifier": { + "description": "Identifier of the permission or permission set.", + "allOf": [ + { + "$ref": "#/definitions/Identifier" + } + ] + }, + "allow": { + "description": "Data that defines what is allowed by the scope.", + "type": [ + "array", + "null" + ], + "items": { + "$ref": "#/definitions/Value" + } + }, + "deny": { + "description": "Data that defines what is denied by the scope. This should be prioritized by validation logic.", + "type": [ + "array", + "null" + ], + "items": { + "$ref": "#/definitions/Value" + } + } + } + } + ], + "required": [ + "identifier" + ] + } + ] + }, + "Identifier": { + "description": "Permission identifier", + "oneOf": [ + { + "description": "Default core plugins set.\n#### This default permission set includes:\n\n- `core:path:default`\n- `core:event:default`\n- `core:window:default`\n- `core:webview:default`\n- `core:app:default`\n- `core:image:default`\n- `core:resources:default`\n- `core:menu:default`\n- `core:tray:default`", + "type": "string", + "const": "core:default", + "markdownDescription": "Default core plugins set.\n#### This default permission set includes:\n\n- `core:path:default`\n- `core:event:default`\n- `core:window:default`\n- `core:webview:default`\n- `core:app:default`\n- `core:image:default`\n- `core:resources:default`\n- `core:menu:default`\n- `core:tray:default`" + }, + { + "description": "Default permissions for the plugin.\n#### This default permission set includes:\n\n- `allow-version`\n- `allow-name`\n- `allow-tauri-version`\n- `allow-identifier`\n- `allow-bundle-type`\n- `allow-register-listener`\n- `allow-remove-listener`", + "type": "string", + "const": "core:app:default", + "markdownDescription": "Default permissions for the plugin.\n#### This default permission set includes:\n\n- `allow-version`\n- `allow-name`\n- `allow-tauri-version`\n- `allow-identifier`\n- `allow-bundle-type`\n- `allow-register-listener`\n- `allow-remove-listener`" + }, + { + "description": "Enables the app_hide command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-app-hide", + "markdownDescription": "Enables the app_hide command without any pre-configured scope." + }, + { + "description": "Enables the app_show command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-app-show", + "markdownDescription": "Enables the app_show command without any pre-configured scope." + }, + { + "description": "Enables the bundle_type command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-bundle-type", + "markdownDescription": "Enables the bundle_type command without any pre-configured scope." + }, + { + "description": "Enables the default_window_icon command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-default-window-icon", + "markdownDescription": "Enables the default_window_icon command without any pre-configured scope." + }, + { + "description": "Enables the fetch_data_store_identifiers command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-fetch-data-store-identifiers", + "markdownDescription": "Enables the fetch_data_store_identifiers command without any pre-configured scope." + }, + { + "description": "Enables the identifier command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-identifier", + "markdownDescription": "Enables the identifier command without any pre-configured scope." + }, + { + "description": "Enables the name command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-name", + "markdownDescription": "Enables the name command without any pre-configured scope." + }, + { + "description": "Enables the register_listener command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-register-listener", + "markdownDescription": "Enables the register_listener command without any pre-configured scope." + }, + { + "description": "Enables the remove_data_store command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-remove-data-store", + "markdownDescription": "Enables the remove_data_store command without any pre-configured scope." + }, + { + "description": "Enables the remove_listener command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-remove-listener", + "markdownDescription": "Enables the remove_listener command without any pre-configured scope." + }, + { + "description": "Enables the set_app_theme command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-set-app-theme", + "markdownDescription": "Enables the set_app_theme command without any pre-configured scope." + }, + { + "description": "Enables the set_dock_visibility command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-set-dock-visibility", + "markdownDescription": "Enables the set_dock_visibility command without any pre-configured scope." + }, + { + "description": "Enables the tauri_version command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-tauri-version", + "markdownDescription": "Enables the tauri_version command without any pre-configured scope." + }, + { + "description": "Enables the version command without any pre-configured scope.", + "type": "string", + "const": "core:app:allow-version", + "markdownDescription": "Enables the version command without any pre-configured scope." + }, + { + "description": "Denies the app_hide command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-app-hide", + "markdownDescription": "Denies the app_hide command without any pre-configured scope." + }, + { + "description": "Denies the app_show command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-app-show", + "markdownDescription": "Denies the app_show command without any pre-configured scope." + }, + { + "description": "Denies the bundle_type command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-bundle-type", + "markdownDescription": "Denies the bundle_type command without any pre-configured scope." + }, + { + "description": "Denies the default_window_icon command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-default-window-icon", + "markdownDescription": "Denies the default_window_icon command without any pre-configured scope." + }, + { + "description": "Denies the fetch_data_store_identifiers command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-fetch-data-store-identifiers", + "markdownDescription": "Denies the fetch_data_store_identifiers command without any pre-configured scope." + }, + { + "description": "Denies the identifier command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-identifier", + "markdownDescription": "Denies the identifier command without any pre-configured scope." + }, + { + "description": "Denies the name command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-name", + "markdownDescription": "Denies the name command without any pre-configured scope." + }, + { + "description": "Denies the register_listener command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-register-listener", + "markdownDescription": "Denies the register_listener command without any pre-configured scope." + }, + { + "description": "Denies the remove_data_store command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-remove-data-store", + "markdownDescription": "Denies the remove_data_store command without any pre-configured scope." + }, + { + "description": "Denies the remove_listener command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-remove-listener", + "markdownDescription": "Denies the remove_listener command without any pre-configured scope." + }, + { + "description": "Denies the set_app_theme command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-set-app-theme", + "markdownDescription": "Denies the set_app_theme command without any pre-configured scope." + }, + { + "description": "Denies the set_dock_visibility command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-set-dock-visibility", + "markdownDescription": "Denies the set_dock_visibility command without any pre-configured scope." + }, + { + "description": "Denies the tauri_version command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-tauri-version", + "markdownDescription": "Denies the tauri_version command without any pre-configured scope." + }, + { + "description": "Denies the version command without any pre-configured scope.", + "type": "string", + "const": "core:app:deny-version", + "markdownDescription": "Denies the version command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-listen`\n- `allow-unlisten`\n- `allow-emit`\n- `allow-emit-to`", + "type": "string", + "const": "core:event:default", + "markdownDescription": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-listen`\n- `allow-unlisten`\n- `allow-emit`\n- `allow-emit-to`" + }, + { + "description": "Enables the emit command without any pre-configured scope.", + "type": "string", + "const": "core:event:allow-emit", + "markdownDescription": "Enables the emit command without any pre-configured scope." + }, + { + "description": "Enables the emit_to command without any pre-configured scope.", + "type": "string", + "const": "core:event:allow-emit-to", + "markdownDescription": "Enables the emit_to command without any pre-configured scope." + }, + { + "description": "Enables the listen command without any pre-configured scope.", + "type": "string", + "const": "core:event:allow-listen", + "markdownDescription": "Enables the listen command without any pre-configured scope." + }, + { + "description": "Enables the unlisten command without any pre-configured scope.", + "type": "string", + "const": "core:event:allow-unlisten", + "markdownDescription": "Enables the unlisten command without any pre-configured scope." + }, + { + "description": "Denies the emit command without any pre-configured scope.", + "type": "string", + "const": "core:event:deny-emit", + "markdownDescription": "Denies the emit command without any pre-configured scope." + }, + { + "description": "Denies the emit_to command without any pre-configured scope.", + "type": "string", + "const": "core:event:deny-emit-to", + "markdownDescription": "Denies the emit_to command without any pre-configured scope." + }, + { + "description": "Denies the listen command without any pre-configured scope.", + "type": "string", + "const": "core:event:deny-listen", + "markdownDescription": "Denies the listen command without any pre-configured scope." + }, + { + "description": "Denies the unlisten command without any pre-configured scope.", + "type": "string", + "const": "core:event:deny-unlisten", + "markdownDescription": "Denies the unlisten command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-new`\n- `allow-from-bytes`\n- `allow-from-path`\n- `allow-rgba`\n- `allow-size`", + "type": "string", + "const": "core:image:default", + "markdownDescription": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-new`\n- `allow-from-bytes`\n- `allow-from-path`\n- `allow-rgba`\n- `allow-size`" + }, + { + "description": "Enables the from_bytes command without any pre-configured scope.", + "type": "string", + "const": "core:image:allow-from-bytes", + "markdownDescription": "Enables the from_bytes command without any pre-configured scope." + }, + { + "description": "Enables the from_path command without any pre-configured scope.", + "type": "string", + "const": "core:image:allow-from-path", + "markdownDescription": "Enables the from_path command without any pre-configured scope." + }, + { + "description": "Enables the new command without any pre-configured scope.", + "type": "string", + "const": "core:image:allow-new", + "markdownDescription": "Enables the new command without any pre-configured scope." + }, + { + "description": "Enables the rgba command without any pre-configured scope.", + "type": "string", + "const": "core:image:allow-rgba", + "markdownDescription": "Enables the rgba command without any pre-configured scope." + }, + { + "description": "Enables the size command without any pre-configured scope.", + "type": "string", + "const": "core:image:allow-size", + "markdownDescription": "Enables the size command without any pre-configured scope." + }, + { + "description": "Denies the from_bytes command without any pre-configured scope.", + "type": "string", + "const": "core:image:deny-from-bytes", + "markdownDescription": "Denies the from_bytes command without any pre-configured scope." + }, + { + "description": "Denies the from_path command without any pre-configured scope.", + "type": "string", + "const": "core:image:deny-from-path", + "markdownDescription": "Denies the from_path command without any pre-configured scope." + }, + { + "description": "Denies the new command without any pre-configured scope.", + "type": "string", + "const": "core:image:deny-new", + "markdownDescription": "Denies the new command without any pre-configured scope." + }, + { + "description": "Denies the rgba command without any pre-configured scope.", + "type": "string", + "const": "core:image:deny-rgba", + "markdownDescription": "Denies the rgba command without any pre-configured scope." + }, + { + "description": "Denies the size command without any pre-configured scope.", + "type": "string", + "const": "core:image:deny-size", + "markdownDescription": "Denies the size command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-new`\n- `allow-append`\n- `allow-prepend`\n- `allow-insert`\n- `allow-remove`\n- `allow-remove-at`\n- `allow-items`\n- `allow-get`\n- `allow-popup`\n- `allow-create-default`\n- `allow-set-as-app-menu`\n- `allow-set-as-window-menu`\n- `allow-text`\n- `allow-set-text`\n- `allow-is-enabled`\n- `allow-set-enabled`\n- `allow-set-accelerator`\n- `allow-set-as-windows-menu-for-nsapp`\n- `allow-set-as-help-menu-for-nsapp`\n- `allow-is-checked`\n- `allow-set-checked`\n- `allow-set-icon`", + "type": "string", + "const": "core:menu:default", + "markdownDescription": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-new`\n- `allow-append`\n- `allow-prepend`\n- `allow-insert`\n- `allow-remove`\n- `allow-remove-at`\n- `allow-items`\n- `allow-get`\n- `allow-popup`\n- `allow-create-default`\n- `allow-set-as-app-menu`\n- `allow-set-as-window-menu`\n- `allow-text`\n- `allow-set-text`\n- `allow-is-enabled`\n- `allow-set-enabled`\n- `allow-set-accelerator`\n- `allow-set-as-windows-menu-for-nsapp`\n- `allow-set-as-help-menu-for-nsapp`\n- `allow-is-checked`\n- `allow-set-checked`\n- `allow-set-icon`" + }, + { + "description": "Enables the append command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-append", + "markdownDescription": "Enables the append command without any pre-configured scope." + }, + { + "description": "Enables the create_default command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-create-default", + "markdownDescription": "Enables the create_default command without any pre-configured scope." + }, + { + "description": "Enables the get command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-get", + "markdownDescription": "Enables the get command without any pre-configured scope." + }, + { + "description": "Enables the insert command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-insert", + "markdownDescription": "Enables the insert command without any pre-configured scope." + }, + { + "description": "Enables the is_checked command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-is-checked", + "markdownDescription": "Enables the is_checked command without any pre-configured scope." + }, + { + "description": "Enables the is_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-is-enabled", + "markdownDescription": "Enables the is_enabled command without any pre-configured scope." + }, + { + "description": "Enables the items command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-items", + "markdownDescription": "Enables the items command without any pre-configured scope." + }, + { + "description": "Enables the new command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-new", + "markdownDescription": "Enables the new command without any pre-configured scope." + }, + { + "description": "Enables the popup command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-popup", + "markdownDescription": "Enables the popup command without any pre-configured scope." + }, + { + "description": "Enables the prepend command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-prepend", + "markdownDescription": "Enables the prepend command without any pre-configured scope." + }, + { + "description": "Enables the remove command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-remove", + "markdownDescription": "Enables the remove command without any pre-configured scope." + }, + { + "description": "Enables the remove_at command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-remove-at", + "markdownDescription": "Enables the remove_at command without any pre-configured scope." + }, + { + "description": "Enables the set_accelerator command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-accelerator", + "markdownDescription": "Enables the set_accelerator command without any pre-configured scope." + }, + { + "description": "Enables the set_as_app_menu command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-as-app-menu", + "markdownDescription": "Enables the set_as_app_menu command without any pre-configured scope." + }, + { + "description": "Enables the set_as_help_menu_for_nsapp command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-as-help-menu-for-nsapp", + "markdownDescription": "Enables the set_as_help_menu_for_nsapp command without any pre-configured scope." + }, + { + "description": "Enables the set_as_window_menu command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-as-window-menu", + "markdownDescription": "Enables the set_as_window_menu command without any pre-configured scope." + }, + { + "description": "Enables the set_as_windows_menu_for_nsapp command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-as-windows-menu-for-nsapp", + "markdownDescription": "Enables the set_as_windows_menu_for_nsapp command without any pre-configured scope." + }, + { + "description": "Enables the set_checked command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-checked", + "markdownDescription": "Enables the set_checked command without any pre-configured scope." + }, + { + "description": "Enables the set_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-enabled", + "markdownDescription": "Enables the set_enabled command without any pre-configured scope." + }, + { + "description": "Enables the set_icon command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-icon", + "markdownDescription": "Enables the set_icon command without any pre-configured scope." + }, + { + "description": "Enables the set_text command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-set-text", + "markdownDescription": "Enables the set_text command without any pre-configured scope." + }, + { + "description": "Enables the text command without any pre-configured scope.", + "type": "string", + "const": "core:menu:allow-text", + "markdownDescription": "Enables the text command without any pre-configured scope." + }, + { + "description": "Denies the append command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-append", + "markdownDescription": "Denies the append command without any pre-configured scope." + }, + { + "description": "Denies the create_default command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-create-default", + "markdownDescription": "Denies the create_default command without any pre-configured scope." + }, + { + "description": "Denies the get command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-get", + "markdownDescription": "Denies the get command without any pre-configured scope." + }, + { + "description": "Denies the insert command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-insert", + "markdownDescription": "Denies the insert command without any pre-configured scope." + }, + { + "description": "Denies the is_checked command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-is-checked", + "markdownDescription": "Denies the is_checked command without any pre-configured scope." + }, + { + "description": "Denies the is_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-is-enabled", + "markdownDescription": "Denies the is_enabled command without any pre-configured scope." + }, + { + "description": "Denies the items command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-items", + "markdownDescription": "Denies the items command without any pre-configured scope." + }, + { + "description": "Denies the new command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-new", + "markdownDescription": "Denies the new command without any pre-configured scope." + }, + { + "description": "Denies the popup command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-popup", + "markdownDescription": "Denies the popup command without any pre-configured scope." + }, + { + "description": "Denies the prepend command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-prepend", + "markdownDescription": "Denies the prepend command without any pre-configured scope." + }, + { + "description": "Denies the remove command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-remove", + "markdownDescription": "Denies the remove command without any pre-configured scope." + }, + { + "description": "Denies the remove_at command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-remove-at", + "markdownDescription": "Denies the remove_at command without any pre-configured scope." + }, + { + "description": "Denies the set_accelerator command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-accelerator", + "markdownDescription": "Denies the set_accelerator command without any pre-configured scope." + }, + { + "description": "Denies the set_as_app_menu command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-as-app-menu", + "markdownDescription": "Denies the set_as_app_menu command without any pre-configured scope." + }, + { + "description": "Denies the set_as_help_menu_for_nsapp command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-as-help-menu-for-nsapp", + "markdownDescription": "Denies the set_as_help_menu_for_nsapp command without any pre-configured scope." + }, + { + "description": "Denies the set_as_window_menu command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-as-window-menu", + "markdownDescription": "Denies the set_as_window_menu command without any pre-configured scope." + }, + { + "description": "Denies the set_as_windows_menu_for_nsapp command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-as-windows-menu-for-nsapp", + "markdownDescription": "Denies the set_as_windows_menu_for_nsapp command without any pre-configured scope." + }, + { + "description": "Denies the set_checked command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-checked", + "markdownDescription": "Denies the set_checked command without any pre-configured scope." + }, + { + "description": "Denies the set_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-enabled", + "markdownDescription": "Denies the set_enabled command without any pre-configured scope." + }, + { + "description": "Denies the set_icon command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-icon", + "markdownDescription": "Denies the set_icon command without any pre-configured scope." + }, + { + "description": "Denies the set_text command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-set-text", + "markdownDescription": "Denies the set_text command without any pre-configured scope." + }, + { + "description": "Denies the text command without any pre-configured scope.", + "type": "string", + "const": "core:menu:deny-text", + "markdownDescription": "Denies the text command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-resolve-directory`\n- `allow-resolve`\n- `allow-normalize`\n- `allow-join`\n- `allow-dirname`\n- `allow-extname`\n- `allow-basename`\n- `allow-is-absolute`", + "type": "string", + "const": "core:path:default", + "markdownDescription": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-resolve-directory`\n- `allow-resolve`\n- `allow-normalize`\n- `allow-join`\n- `allow-dirname`\n- `allow-extname`\n- `allow-basename`\n- `allow-is-absolute`" + }, + { + "description": "Enables the basename command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-basename", + "markdownDescription": "Enables the basename command without any pre-configured scope." + }, + { + "description": "Enables the dirname command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-dirname", + "markdownDescription": "Enables the dirname command without any pre-configured scope." + }, + { + "description": "Enables the extname command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-extname", + "markdownDescription": "Enables the extname command without any pre-configured scope." + }, + { + "description": "Enables the is_absolute command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-is-absolute", + "markdownDescription": "Enables the is_absolute command without any pre-configured scope." + }, + { + "description": "Enables the join command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-join", + "markdownDescription": "Enables the join command without any pre-configured scope." + }, + { + "description": "Enables the normalize command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-normalize", + "markdownDescription": "Enables the normalize command without any pre-configured scope." + }, + { + "description": "Enables the resolve command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-resolve", + "markdownDescription": "Enables the resolve command without any pre-configured scope." + }, + { + "description": "Enables the resolve_directory command without any pre-configured scope.", + "type": "string", + "const": "core:path:allow-resolve-directory", + "markdownDescription": "Enables the resolve_directory command without any pre-configured scope." + }, + { + "description": "Denies the basename command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-basename", + "markdownDescription": "Denies the basename command without any pre-configured scope." + }, + { + "description": "Denies the dirname command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-dirname", + "markdownDescription": "Denies the dirname command without any pre-configured scope." + }, + { + "description": "Denies the extname command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-extname", + "markdownDescription": "Denies the extname command without any pre-configured scope." + }, + { + "description": "Denies the is_absolute command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-is-absolute", + "markdownDescription": "Denies the is_absolute command without any pre-configured scope." + }, + { + "description": "Denies the join command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-join", + "markdownDescription": "Denies the join command without any pre-configured scope." + }, + { + "description": "Denies the normalize command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-normalize", + "markdownDescription": "Denies the normalize command without any pre-configured scope." + }, + { + "description": "Denies the resolve command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-resolve", + "markdownDescription": "Denies the resolve command without any pre-configured scope." + }, + { + "description": "Denies the resolve_directory command without any pre-configured scope.", + "type": "string", + "const": "core:path:deny-resolve-directory", + "markdownDescription": "Denies the resolve_directory command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-close`", + "type": "string", + "const": "core:resources:default", + "markdownDescription": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-close`" + }, + { + "description": "Enables the close command without any pre-configured scope.", + "type": "string", + "const": "core:resources:allow-close", + "markdownDescription": "Enables the close command without any pre-configured scope." + }, + { + "description": "Denies the close command without any pre-configured scope.", + "type": "string", + "const": "core:resources:deny-close", + "markdownDescription": "Denies the close command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-new`\n- `allow-get-by-id`\n- `allow-remove-by-id`\n- `allow-set-icon`\n- `allow-set-menu`\n- `allow-set-tooltip`\n- `allow-set-title`\n- `allow-set-visible`\n- `allow-set-temp-dir-path`\n- `allow-set-icon-as-template`\n- `allow-set-show-menu-on-left-click`", + "type": "string", + "const": "core:tray:default", + "markdownDescription": "Default permissions for the plugin, which enables all commands.\n#### This default permission set includes:\n\n- `allow-new`\n- `allow-get-by-id`\n- `allow-remove-by-id`\n- `allow-set-icon`\n- `allow-set-menu`\n- `allow-set-tooltip`\n- `allow-set-title`\n- `allow-set-visible`\n- `allow-set-temp-dir-path`\n- `allow-set-icon-as-template`\n- `allow-set-show-menu-on-left-click`" + }, + { + "description": "Enables the get_by_id command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-get-by-id", + "markdownDescription": "Enables the get_by_id command without any pre-configured scope." + }, + { + "description": "Enables the new command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-new", + "markdownDescription": "Enables the new command without any pre-configured scope." + }, + { + "description": "Enables the remove_by_id command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-remove-by-id", + "markdownDescription": "Enables the remove_by_id command without any pre-configured scope." + }, + { + "description": "Enables the set_icon command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-icon", + "markdownDescription": "Enables the set_icon command without any pre-configured scope." + }, + { + "description": "Enables the set_icon_as_template command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-icon-as-template", + "markdownDescription": "Enables the set_icon_as_template command without any pre-configured scope." + }, + { + "description": "Enables the set_menu command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-menu", + "markdownDescription": "Enables the set_menu command without any pre-configured scope." + }, + { + "description": "Enables the set_show_menu_on_left_click command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-show-menu-on-left-click", + "markdownDescription": "Enables the set_show_menu_on_left_click command without any pre-configured scope." + }, + { + "description": "Enables the set_temp_dir_path command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-temp-dir-path", + "markdownDescription": "Enables the set_temp_dir_path command without any pre-configured scope." + }, + { + "description": "Enables the set_title command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-title", + "markdownDescription": "Enables the set_title command without any pre-configured scope." + }, + { + "description": "Enables the set_tooltip command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-tooltip", + "markdownDescription": "Enables the set_tooltip command without any pre-configured scope." + }, + { + "description": "Enables the set_visible command without any pre-configured scope.", + "type": "string", + "const": "core:tray:allow-set-visible", + "markdownDescription": "Enables the set_visible command without any pre-configured scope." + }, + { + "description": "Denies the get_by_id command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-get-by-id", + "markdownDescription": "Denies the get_by_id command without any pre-configured scope." + }, + { + "description": "Denies the new command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-new", + "markdownDescription": "Denies the new command without any pre-configured scope." + }, + { + "description": "Denies the remove_by_id command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-remove-by-id", + "markdownDescription": "Denies the remove_by_id command without any pre-configured scope." + }, + { + "description": "Denies the set_icon command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-icon", + "markdownDescription": "Denies the set_icon command without any pre-configured scope." + }, + { + "description": "Denies the set_icon_as_template command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-icon-as-template", + "markdownDescription": "Denies the set_icon_as_template command without any pre-configured scope." + }, + { + "description": "Denies the set_menu command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-menu", + "markdownDescription": "Denies the set_menu command without any pre-configured scope." + }, + { + "description": "Denies the set_show_menu_on_left_click command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-show-menu-on-left-click", + "markdownDescription": "Denies the set_show_menu_on_left_click command without any pre-configured scope." + }, + { + "description": "Denies the set_temp_dir_path command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-temp-dir-path", + "markdownDescription": "Denies the set_temp_dir_path command without any pre-configured scope." + }, + { + "description": "Denies the set_title command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-title", + "markdownDescription": "Denies the set_title command without any pre-configured scope." + }, + { + "description": "Denies the set_tooltip command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-tooltip", + "markdownDescription": "Denies the set_tooltip command without any pre-configured scope." + }, + { + "description": "Denies the set_visible command without any pre-configured scope.", + "type": "string", + "const": "core:tray:deny-set-visible", + "markdownDescription": "Denies the set_visible command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin.\n#### This default permission set includes:\n\n- `allow-get-all-webviews`\n- `allow-webview-position`\n- `allow-webview-size`\n- `allow-internal-toggle-devtools`", + "type": "string", + "const": "core:webview:default", + "markdownDescription": "Default permissions for the plugin.\n#### This default permission set includes:\n\n- `allow-get-all-webviews`\n- `allow-webview-position`\n- `allow-webview-size`\n- `allow-internal-toggle-devtools`" + }, + { + "description": "Enables the clear_all_browsing_data command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-clear-all-browsing-data", + "markdownDescription": "Enables the clear_all_browsing_data command without any pre-configured scope." + }, + { + "description": "Enables the create_webview command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-create-webview", + "markdownDescription": "Enables the create_webview command without any pre-configured scope." + }, + { + "description": "Enables the create_webview_window command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-create-webview-window", + "markdownDescription": "Enables the create_webview_window command without any pre-configured scope." + }, + { + "description": "Enables the get_all_webviews command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-get-all-webviews", + "markdownDescription": "Enables the get_all_webviews command without any pre-configured scope." + }, + { + "description": "Enables the internal_toggle_devtools command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-internal-toggle-devtools", + "markdownDescription": "Enables the internal_toggle_devtools command without any pre-configured scope." + }, + { + "description": "Enables the print command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-print", + "markdownDescription": "Enables the print command without any pre-configured scope." + }, + { + "description": "Enables the reparent command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-reparent", + "markdownDescription": "Enables the reparent command without any pre-configured scope." + }, + { + "description": "Enables the set_webview_auto_resize command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-set-webview-auto-resize", + "markdownDescription": "Enables the set_webview_auto_resize command without any pre-configured scope." + }, + { + "description": "Enables the set_webview_background_color command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-set-webview-background-color", + "markdownDescription": "Enables the set_webview_background_color command without any pre-configured scope." + }, + { + "description": "Enables the set_webview_focus command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-set-webview-focus", + "markdownDescription": "Enables the set_webview_focus command without any pre-configured scope." + }, + { + "description": "Enables the set_webview_position command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-set-webview-position", + "markdownDescription": "Enables the set_webview_position command without any pre-configured scope." + }, + { + "description": "Enables the set_webview_size command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-set-webview-size", + "markdownDescription": "Enables the set_webview_size command without any pre-configured scope." + }, + { + "description": "Enables the set_webview_zoom command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-set-webview-zoom", + "markdownDescription": "Enables the set_webview_zoom command without any pre-configured scope." + }, + { + "description": "Enables the webview_close command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-webview-close", + "markdownDescription": "Enables the webview_close command without any pre-configured scope." + }, + { + "description": "Enables the webview_hide command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-webview-hide", + "markdownDescription": "Enables the webview_hide command without any pre-configured scope." + }, + { + "description": "Enables the webview_position command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-webview-position", + "markdownDescription": "Enables the webview_position command without any pre-configured scope." + }, + { + "description": "Enables the webview_show command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-webview-show", + "markdownDescription": "Enables the webview_show command without any pre-configured scope." + }, + { + "description": "Enables the webview_size command without any pre-configured scope.", + "type": "string", + "const": "core:webview:allow-webview-size", + "markdownDescription": "Enables the webview_size command without any pre-configured scope." + }, + { + "description": "Denies the clear_all_browsing_data command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-clear-all-browsing-data", + "markdownDescription": "Denies the clear_all_browsing_data command without any pre-configured scope." + }, + { + "description": "Denies the create_webview command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-create-webview", + "markdownDescription": "Denies the create_webview command without any pre-configured scope." + }, + { + "description": "Denies the create_webview_window command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-create-webview-window", + "markdownDescription": "Denies the create_webview_window command without any pre-configured scope." + }, + { + "description": "Denies the get_all_webviews command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-get-all-webviews", + "markdownDescription": "Denies the get_all_webviews command without any pre-configured scope." + }, + { + "description": "Denies the internal_toggle_devtools command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-internal-toggle-devtools", + "markdownDescription": "Denies the internal_toggle_devtools command without any pre-configured scope." + }, + { + "description": "Denies the print command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-print", + "markdownDescription": "Denies the print command without any pre-configured scope." + }, + { + "description": "Denies the reparent command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-reparent", + "markdownDescription": "Denies the reparent command without any pre-configured scope." + }, + { + "description": "Denies the set_webview_auto_resize command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-set-webview-auto-resize", + "markdownDescription": "Denies the set_webview_auto_resize command without any pre-configured scope." + }, + { + "description": "Denies the set_webview_background_color command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-set-webview-background-color", + "markdownDescription": "Denies the set_webview_background_color command without any pre-configured scope." + }, + { + "description": "Denies the set_webview_focus command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-set-webview-focus", + "markdownDescription": "Denies the set_webview_focus command without any pre-configured scope." + }, + { + "description": "Denies the set_webview_position command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-set-webview-position", + "markdownDescription": "Denies the set_webview_position command without any pre-configured scope." + }, + { + "description": "Denies the set_webview_size command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-set-webview-size", + "markdownDescription": "Denies the set_webview_size command without any pre-configured scope." + }, + { + "description": "Denies the set_webview_zoom command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-set-webview-zoom", + "markdownDescription": "Denies the set_webview_zoom command without any pre-configured scope." + }, + { + "description": "Denies the webview_close command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-webview-close", + "markdownDescription": "Denies the webview_close command without any pre-configured scope." + }, + { + "description": "Denies the webview_hide command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-webview-hide", + "markdownDescription": "Denies the webview_hide command without any pre-configured scope." + }, + { + "description": "Denies the webview_position command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-webview-position", + "markdownDescription": "Denies the webview_position command without any pre-configured scope." + }, + { + "description": "Denies the webview_show command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-webview-show", + "markdownDescription": "Denies the webview_show command without any pre-configured scope." + }, + { + "description": "Denies the webview_size command without any pre-configured scope.", + "type": "string", + "const": "core:webview:deny-webview-size", + "markdownDescription": "Denies the webview_size command without any pre-configured scope." + }, + { + "description": "Default permissions for the plugin.\n#### This default permission set includes:\n\n- `allow-get-all-windows`\n- `allow-scale-factor`\n- `allow-inner-position`\n- `allow-outer-position`\n- `allow-inner-size`\n- `allow-outer-size`\n- `allow-is-fullscreen`\n- `allow-is-minimized`\n- `allow-is-maximized`\n- `allow-is-focused`\n- `allow-is-decorated`\n- `allow-is-resizable`\n- `allow-is-maximizable`\n- `allow-is-minimizable`\n- `allow-is-closable`\n- `allow-is-visible`\n- `allow-is-enabled`\n- `allow-title`\n- `allow-current-monitor`\n- `allow-primary-monitor`\n- `allow-monitor-from-point`\n- `allow-available-monitors`\n- `allow-cursor-position`\n- `allow-theme`\n- `allow-is-always-on-top`\n- `allow-internal-toggle-maximize`", + "type": "string", + "const": "core:window:default", + "markdownDescription": "Default permissions for the plugin.\n#### This default permission set includes:\n\n- `allow-get-all-windows`\n- `allow-scale-factor`\n- `allow-inner-position`\n- `allow-outer-position`\n- `allow-inner-size`\n- `allow-outer-size`\n- `allow-is-fullscreen`\n- `allow-is-minimized`\n- `allow-is-maximized`\n- `allow-is-focused`\n- `allow-is-decorated`\n- `allow-is-resizable`\n- `allow-is-maximizable`\n- `allow-is-minimizable`\n- `allow-is-closable`\n- `allow-is-visible`\n- `allow-is-enabled`\n- `allow-title`\n- `allow-current-monitor`\n- `allow-primary-monitor`\n- `allow-monitor-from-point`\n- `allow-available-monitors`\n- `allow-cursor-position`\n- `allow-theme`\n- `allow-is-always-on-top`\n- `allow-internal-toggle-maximize`" + }, + { + "description": "Enables the available_monitors command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-available-monitors", + "markdownDescription": "Enables the available_monitors command without any pre-configured scope." + }, + { + "description": "Enables the center command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-center", + "markdownDescription": "Enables the center command without any pre-configured scope." + }, + { + "description": "Enables the close command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-close", + "markdownDescription": "Enables the close command without any pre-configured scope." + }, + { + "description": "Enables the create command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-create", + "markdownDescription": "Enables the create command without any pre-configured scope." + }, + { + "description": "Enables the current_monitor command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-current-monitor", + "markdownDescription": "Enables the current_monitor command without any pre-configured scope." + }, + { + "description": "Enables the cursor_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-cursor-position", + "markdownDescription": "Enables the cursor_position command without any pre-configured scope." + }, + { + "description": "Enables the destroy command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-destroy", + "markdownDescription": "Enables the destroy command without any pre-configured scope." + }, + { + "description": "Enables the get_all_windows command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-get-all-windows", + "markdownDescription": "Enables the get_all_windows command without any pre-configured scope." + }, + { + "description": "Enables the hide command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-hide", + "markdownDescription": "Enables the hide command without any pre-configured scope." + }, + { + "description": "Enables the inner_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-inner-position", + "markdownDescription": "Enables the inner_position command without any pre-configured scope." + }, + { + "description": "Enables the inner_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-inner-size", + "markdownDescription": "Enables the inner_size command without any pre-configured scope." + }, + { + "description": "Enables the internal_toggle_maximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-internal-toggle-maximize", + "markdownDescription": "Enables the internal_toggle_maximize command without any pre-configured scope." + }, + { + "description": "Enables the is_always_on_top command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-always-on-top", + "markdownDescription": "Enables the is_always_on_top command without any pre-configured scope." + }, + { + "description": "Enables the is_closable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-closable", + "markdownDescription": "Enables the is_closable command without any pre-configured scope." + }, + { + "description": "Enables the is_decorated command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-decorated", + "markdownDescription": "Enables the is_decorated command without any pre-configured scope." + }, + { + "description": "Enables the is_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-enabled", + "markdownDescription": "Enables the is_enabled command without any pre-configured scope." + }, + { + "description": "Enables the is_focused command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-focused", + "markdownDescription": "Enables the is_focused command without any pre-configured scope." + }, + { + "description": "Enables the is_fullscreen command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-fullscreen", + "markdownDescription": "Enables the is_fullscreen command without any pre-configured scope." + }, + { + "description": "Enables the is_maximizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-maximizable", + "markdownDescription": "Enables the is_maximizable command without any pre-configured scope." + }, + { + "description": "Enables the is_maximized command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-maximized", + "markdownDescription": "Enables the is_maximized command without any pre-configured scope." + }, + { + "description": "Enables the is_minimizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-minimizable", + "markdownDescription": "Enables the is_minimizable command without any pre-configured scope." + }, + { + "description": "Enables the is_minimized command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-minimized", + "markdownDescription": "Enables the is_minimized command without any pre-configured scope." + }, + { + "description": "Enables the is_resizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-resizable", + "markdownDescription": "Enables the is_resizable command without any pre-configured scope." + }, + { + "description": "Enables the is_visible command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-is-visible", + "markdownDescription": "Enables the is_visible command without any pre-configured scope." + }, + { + "description": "Enables the maximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-maximize", + "markdownDescription": "Enables the maximize command without any pre-configured scope." + }, + { + "description": "Enables the minimize command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-minimize", + "markdownDescription": "Enables the minimize command without any pre-configured scope." + }, + { + "description": "Enables the monitor_from_point command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-monitor-from-point", + "markdownDescription": "Enables the monitor_from_point command without any pre-configured scope." + }, + { + "description": "Enables the outer_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-outer-position", + "markdownDescription": "Enables the outer_position command without any pre-configured scope." + }, + { + "description": "Enables the outer_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-outer-size", + "markdownDescription": "Enables the outer_size command without any pre-configured scope." + }, + { + "description": "Enables the primary_monitor command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-primary-monitor", + "markdownDescription": "Enables the primary_monitor command without any pre-configured scope." + }, + { + "description": "Enables the request_user_attention command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-request-user-attention", + "markdownDescription": "Enables the request_user_attention command without any pre-configured scope." + }, + { + "description": "Enables the scale_factor command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-scale-factor", + "markdownDescription": "Enables the scale_factor command without any pre-configured scope." + }, + { + "description": "Enables the set_always_on_bottom command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-always-on-bottom", + "markdownDescription": "Enables the set_always_on_bottom command without any pre-configured scope." + }, + { + "description": "Enables the set_always_on_top command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-always-on-top", + "markdownDescription": "Enables the set_always_on_top command without any pre-configured scope." + }, + { + "description": "Enables the set_background_color command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-background-color", + "markdownDescription": "Enables the set_background_color command without any pre-configured scope." + }, + { + "description": "Enables the set_badge_count command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-badge-count", + "markdownDescription": "Enables the set_badge_count command without any pre-configured scope." + }, + { + "description": "Enables the set_badge_label command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-badge-label", + "markdownDescription": "Enables the set_badge_label command without any pre-configured scope." + }, + { + "description": "Enables the set_closable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-closable", + "markdownDescription": "Enables the set_closable command without any pre-configured scope." + }, + { + "description": "Enables the set_content_protected command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-content-protected", + "markdownDescription": "Enables the set_content_protected command without any pre-configured scope." + }, + { + "description": "Enables the set_cursor_grab command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-cursor-grab", + "markdownDescription": "Enables the set_cursor_grab command without any pre-configured scope." + }, + { + "description": "Enables the set_cursor_icon command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-cursor-icon", + "markdownDescription": "Enables the set_cursor_icon command without any pre-configured scope." + }, + { + "description": "Enables the set_cursor_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-cursor-position", + "markdownDescription": "Enables the set_cursor_position command without any pre-configured scope." + }, + { + "description": "Enables the set_cursor_visible command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-cursor-visible", + "markdownDescription": "Enables the set_cursor_visible command without any pre-configured scope." + }, + { + "description": "Enables the set_decorations command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-decorations", + "markdownDescription": "Enables the set_decorations command without any pre-configured scope." + }, + { + "description": "Enables the set_effects command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-effects", + "markdownDescription": "Enables the set_effects command without any pre-configured scope." + }, + { + "description": "Enables the set_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-enabled", + "markdownDescription": "Enables the set_enabled command without any pre-configured scope." + }, + { + "description": "Enables the set_focus command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-focus", + "markdownDescription": "Enables the set_focus command without any pre-configured scope." + }, + { + "description": "Enables the set_focusable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-focusable", + "markdownDescription": "Enables the set_focusable command without any pre-configured scope." + }, + { + "description": "Enables the set_fullscreen command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-fullscreen", + "markdownDescription": "Enables the set_fullscreen command without any pre-configured scope." + }, + { + "description": "Enables the set_icon command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-icon", + "markdownDescription": "Enables the set_icon command without any pre-configured scope." + }, + { + "description": "Enables the set_ignore_cursor_events command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-ignore-cursor-events", + "markdownDescription": "Enables the set_ignore_cursor_events command without any pre-configured scope." + }, + { + "description": "Enables the set_max_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-max-size", + "markdownDescription": "Enables the set_max_size command without any pre-configured scope." + }, + { + "description": "Enables the set_maximizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-maximizable", + "markdownDescription": "Enables the set_maximizable command without any pre-configured scope." + }, + { + "description": "Enables the set_min_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-min-size", + "markdownDescription": "Enables the set_min_size command without any pre-configured scope." + }, + { + "description": "Enables the set_minimizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-minimizable", + "markdownDescription": "Enables the set_minimizable command without any pre-configured scope." + }, + { + "description": "Enables the set_overlay_icon command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-overlay-icon", + "markdownDescription": "Enables the set_overlay_icon command without any pre-configured scope." + }, + { + "description": "Enables the set_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-position", + "markdownDescription": "Enables the set_position command without any pre-configured scope." + }, + { + "description": "Enables the set_progress_bar command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-progress-bar", + "markdownDescription": "Enables the set_progress_bar command without any pre-configured scope." + }, + { + "description": "Enables the set_resizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-resizable", + "markdownDescription": "Enables the set_resizable command without any pre-configured scope." + }, + { + "description": "Enables the set_shadow command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-shadow", + "markdownDescription": "Enables the set_shadow command without any pre-configured scope." + }, + { + "description": "Enables the set_simple_fullscreen command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-simple-fullscreen", + "markdownDescription": "Enables the set_simple_fullscreen command without any pre-configured scope." + }, + { + "description": "Enables the set_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-size", + "markdownDescription": "Enables the set_size command without any pre-configured scope." + }, + { + "description": "Enables the set_size_constraints command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-size-constraints", + "markdownDescription": "Enables the set_size_constraints command without any pre-configured scope." + }, + { + "description": "Enables the set_skip_taskbar command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-skip-taskbar", + "markdownDescription": "Enables the set_skip_taskbar command without any pre-configured scope." + }, + { + "description": "Enables the set_theme command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-theme", + "markdownDescription": "Enables the set_theme command without any pre-configured scope." + }, + { + "description": "Enables the set_title command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-title", + "markdownDescription": "Enables the set_title command without any pre-configured scope." + }, + { + "description": "Enables the set_title_bar_style command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-title-bar-style", + "markdownDescription": "Enables the set_title_bar_style command without any pre-configured scope." + }, + { + "description": "Enables the set_visible_on_all_workspaces command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-set-visible-on-all-workspaces", + "markdownDescription": "Enables the set_visible_on_all_workspaces command without any pre-configured scope." + }, + { + "description": "Enables the show command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-show", + "markdownDescription": "Enables the show command without any pre-configured scope." + }, + { + "description": "Enables the start_dragging command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-start-dragging", + "markdownDescription": "Enables the start_dragging command without any pre-configured scope." + }, + { + "description": "Enables the start_resize_dragging command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-start-resize-dragging", + "markdownDescription": "Enables the start_resize_dragging command without any pre-configured scope." + }, + { + "description": "Enables the theme command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-theme", + "markdownDescription": "Enables the theme command without any pre-configured scope." + }, + { + "description": "Enables the title command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-title", + "markdownDescription": "Enables the title command without any pre-configured scope." + }, + { + "description": "Enables the toggle_maximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-toggle-maximize", + "markdownDescription": "Enables the toggle_maximize command without any pre-configured scope." + }, + { + "description": "Enables the unmaximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-unmaximize", + "markdownDescription": "Enables the unmaximize command without any pre-configured scope." + }, + { + "description": "Enables the unminimize command without any pre-configured scope.", + "type": "string", + "const": "core:window:allow-unminimize", + "markdownDescription": "Enables the unminimize command without any pre-configured scope." + }, + { + "description": "Denies the available_monitors command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-available-monitors", + "markdownDescription": "Denies the available_monitors command without any pre-configured scope." + }, + { + "description": "Denies the center command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-center", + "markdownDescription": "Denies the center command without any pre-configured scope." + }, + { + "description": "Denies the close command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-close", + "markdownDescription": "Denies the close command without any pre-configured scope." + }, + { + "description": "Denies the create command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-create", + "markdownDescription": "Denies the create command without any pre-configured scope." + }, + { + "description": "Denies the current_monitor command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-current-monitor", + "markdownDescription": "Denies the current_monitor command without any pre-configured scope." + }, + { + "description": "Denies the cursor_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-cursor-position", + "markdownDescription": "Denies the cursor_position command without any pre-configured scope." + }, + { + "description": "Denies the destroy command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-destroy", + "markdownDescription": "Denies the destroy command without any pre-configured scope." + }, + { + "description": "Denies the get_all_windows command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-get-all-windows", + "markdownDescription": "Denies the get_all_windows command without any pre-configured scope." + }, + { + "description": "Denies the hide command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-hide", + "markdownDescription": "Denies the hide command without any pre-configured scope." + }, + { + "description": "Denies the inner_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-inner-position", + "markdownDescription": "Denies the inner_position command without any pre-configured scope." + }, + { + "description": "Denies the inner_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-inner-size", + "markdownDescription": "Denies the inner_size command without any pre-configured scope." + }, + { + "description": "Denies the internal_toggle_maximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-internal-toggle-maximize", + "markdownDescription": "Denies the internal_toggle_maximize command without any pre-configured scope." + }, + { + "description": "Denies the is_always_on_top command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-always-on-top", + "markdownDescription": "Denies the is_always_on_top command without any pre-configured scope." + }, + { + "description": "Denies the is_closable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-closable", + "markdownDescription": "Denies the is_closable command without any pre-configured scope." + }, + { + "description": "Denies the is_decorated command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-decorated", + "markdownDescription": "Denies the is_decorated command without any pre-configured scope." + }, + { + "description": "Denies the is_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-enabled", + "markdownDescription": "Denies the is_enabled command without any pre-configured scope." + }, + { + "description": "Denies the is_focused command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-focused", + "markdownDescription": "Denies the is_focused command without any pre-configured scope." + }, + { + "description": "Denies the is_fullscreen command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-fullscreen", + "markdownDescription": "Denies the is_fullscreen command without any pre-configured scope." + }, + { + "description": "Denies the is_maximizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-maximizable", + "markdownDescription": "Denies the is_maximizable command without any pre-configured scope." + }, + { + "description": "Denies the is_maximized command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-maximized", + "markdownDescription": "Denies the is_maximized command without any pre-configured scope." + }, + { + "description": "Denies the is_minimizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-minimizable", + "markdownDescription": "Denies the is_minimizable command without any pre-configured scope." + }, + { + "description": "Denies the is_minimized command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-minimized", + "markdownDescription": "Denies the is_minimized command without any pre-configured scope." + }, + { + "description": "Denies the is_resizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-resizable", + "markdownDescription": "Denies the is_resizable command without any pre-configured scope." + }, + { + "description": "Denies the is_visible command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-is-visible", + "markdownDescription": "Denies the is_visible command without any pre-configured scope." + }, + { + "description": "Denies the maximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-maximize", + "markdownDescription": "Denies the maximize command without any pre-configured scope." + }, + { + "description": "Denies the minimize command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-minimize", + "markdownDescription": "Denies the minimize command without any pre-configured scope." + }, + { + "description": "Denies the monitor_from_point command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-monitor-from-point", + "markdownDescription": "Denies the monitor_from_point command without any pre-configured scope." + }, + { + "description": "Denies the outer_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-outer-position", + "markdownDescription": "Denies the outer_position command without any pre-configured scope." + }, + { + "description": "Denies the outer_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-outer-size", + "markdownDescription": "Denies the outer_size command without any pre-configured scope." + }, + { + "description": "Denies the primary_monitor command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-primary-monitor", + "markdownDescription": "Denies the primary_monitor command without any pre-configured scope." + }, + { + "description": "Denies the request_user_attention command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-request-user-attention", + "markdownDescription": "Denies the request_user_attention command without any pre-configured scope." + }, + { + "description": "Denies the scale_factor command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-scale-factor", + "markdownDescription": "Denies the scale_factor command without any pre-configured scope." + }, + { + "description": "Denies the set_always_on_bottom command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-always-on-bottom", + "markdownDescription": "Denies the set_always_on_bottom command without any pre-configured scope." + }, + { + "description": "Denies the set_always_on_top command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-always-on-top", + "markdownDescription": "Denies the set_always_on_top command without any pre-configured scope." + }, + { + "description": "Denies the set_background_color command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-background-color", + "markdownDescription": "Denies the set_background_color command without any pre-configured scope." + }, + { + "description": "Denies the set_badge_count command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-badge-count", + "markdownDescription": "Denies the set_badge_count command without any pre-configured scope." + }, + { + "description": "Denies the set_badge_label command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-badge-label", + "markdownDescription": "Denies the set_badge_label command without any pre-configured scope." + }, + { + "description": "Denies the set_closable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-closable", + "markdownDescription": "Denies the set_closable command without any pre-configured scope." + }, + { + "description": "Denies the set_content_protected command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-content-protected", + "markdownDescription": "Denies the set_content_protected command without any pre-configured scope." + }, + { + "description": "Denies the set_cursor_grab command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-cursor-grab", + "markdownDescription": "Denies the set_cursor_grab command without any pre-configured scope." + }, + { + "description": "Denies the set_cursor_icon command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-cursor-icon", + "markdownDescription": "Denies the set_cursor_icon command without any pre-configured scope." + }, + { + "description": "Denies the set_cursor_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-cursor-position", + "markdownDescription": "Denies the set_cursor_position command without any pre-configured scope." + }, + { + "description": "Denies the set_cursor_visible command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-cursor-visible", + "markdownDescription": "Denies the set_cursor_visible command without any pre-configured scope." + }, + { + "description": "Denies the set_decorations command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-decorations", + "markdownDescription": "Denies the set_decorations command without any pre-configured scope." + }, + { + "description": "Denies the set_effects command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-effects", + "markdownDescription": "Denies the set_effects command without any pre-configured scope." + }, + { + "description": "Denies the set_enabled command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-enabled", + "markdownDescription": "Denies the set_enabled command without any pre-configured scope." + }, + { + "description": "Denies the set_focus command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-focus", + "markdownDescription": "Denies the set_focus command without any pre-configured scope." + }, + { + "description": "Denies the set_focusable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-focusable", + "markdownDescription": "Denies the set_focusable command without any pre-configured scope." + }, + { + "description": "Denies the set_fullscreen command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-fullscreen", + "markdownDescription": "Denies the set_fullscreen command without any pre-configured scope." + }, + { + "description": "Denies the set_icon command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-icon", + "markdownDescription": "Denies the set_icon command without any pre-configured scope." + }, + { + "description": "Denies the set_ignore_cursor_events command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-ignore-cursor-events", + "markdownDescription": "Denies the set_ignore_cursor_events command without any pre-configured scope." + }, + { + "description": "Denies the set_max_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-max-size", + "markdownDescription": "Denies the set_max_size command without any pre-configured scope." + }, + { + "description": "Denies the set_maximizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-maximizable", + "markdownDescription": "Denies the set_maximizable command without any pre-configured scope." + }, + { + "description": "Denies the set_min_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-min-size", + "markdownDescription": "Denies the set_min_size command without any pre-configured scope." + }, + { + "description": "Denies the set_minimizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-minimizable", + "markdownDescription": "Denies the set_minimizable command without any pre-configured scope." + }, + { + "description": "Denies the set_overlay_icon command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-overlay-icon", + "markdownDescription": "Denies the set_overlay_icon command without any pre-configured scope." + }, + { + "description": "Denies the set_position command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-position", + "markdownDescription": "Denies the set_position command without any pre-configured scope." + }, + { + "description": "Denies the set_progress_bar command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-progress-bar", + "markdownDescription": "Denies the set_progress_bar command without any pre-configured scope." + }, + { + "description": "Denies the set_resizable command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-resizable", + "markdownDescription": "Denies the set_resizable command without any pre-configured scope." + }, + { + "description": "Denies the set_shadow command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-shadow", + "markdownDescription": "Denies the set_shadow command without any pre-configured scope." + }, + { + "description": "Denies the set_simple_fullscreen command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-simple-fullscreen", + "markdownDescription": "Denies the set_simple_fullscreen command without any pre-configured scope." + }, + { + "description": "Denies the set_size command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-size", + "markdownDescription": "Denies the set_size command without any pre-configured scope." + }, + { + "description": "Denies the set_size_constraints command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-size-constraints", + "markdownDescription": "Denies the set_size_constraints command without any pre-configured scope." + }, + { + "description": "Denies the set_skip_taskbar command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-skip-taskbar", + "markdownDescription": "Denies the set_skip_taskbar command without any pre-configured scope." + }, + { + "description": "Denies the set_theme command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-theme", + "markdownDescription": "Denies the set_theme command without any pre-configured scope." + }, + { + "description": "Denies the set_title command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-title", + "markdownDescription": "Denies the set_title command without any pre-configured scope." + }, + { + "description": "Denies the set_title_bar_style command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-title-bar-style", + "markdownDescription": "Denies the set_title_bar_style command without any pre-configured scope." + }, + { + "description": "Denies the set_visible_on_all_workspaces command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-set-visible-on-all-workspaces", + "markdownDescription": "Denies the set_visible_on_all_workspaces command without any pre-configured scope." + }, + { + "description": "Denies the show command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-show", + "markdownDescription": "Denies the show command without any pre-configured scope." + }, + { + "description": "Denies the start_dragging command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-start-dragging", + "markdownDescription": "Denies the start_dragging command without any pre-configured scope." + }, + { + "description": "Denies the start_resize_dragging command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-start-resize-dragging", + "markdownDescription": "Denies the start_resize_dragging command without any pre-configured scope." + }, + { + "description": "Denies the theme command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-theme", + "markdownDescription": "Denies the theme command without any pre-configured scope." + }, + { + "description": "Denies the title command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-title", + "markdownDescription": "Denies the title command without any pre-configured scope." + }, + { + "description": "Denies the toggle_maximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-toggle-maximize", + "markdownDescription": "Denies the toggle_maximize command without any pre-configured scope." + }, + { + "description": "Denies the unmaximize command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-unmaximize", + "markdownDescription": "Denies the unmaximize command without any pre-configured scope." + }, + { + "description": "Denies the unminimize command without any pre-configured scope.", + "type": "string", + "const": "core:window:deny-unminimize", + "markdownDescription": "Denies the unminimize command without any pre-configured scope." + }, + { + "description": "This permission set configures the types of dialogs\navailable from the dialog plugin.\n\n#### Granted Permissions\n\nAll dialog types are enabled.\n\n\n\n#### This default permission set includes:\n\n- `allow-message`\n- `allow-save`\n- `allow-open`", + "type": "string", + "const": "dialog:default", + "markdownDescription": "This permission set configures the types of dialogs\navailable from the dialog plugin.\n\n#### Granted Permissions\n\nAll dialog types are enabled.\n\n\n\n#### This default permission set includes:\n\n- `allow-message`\n- `allow-save`\n- `allow-open`" + }, + { + "description": "Enables the ask command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `allow-message` and will be removed in v3)", + "type": "string", + "const": "dialog:allow-ask", + "markdownDescription": "Enables the ask command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `allow-message` and will be removed in v3)" + }, + { + "description": "Enables the confirm command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `allow-message` and will be removed in v3)", + "type": "string", + "const": "dialog:allow-confirm", + "markdownDescription": "Enables the confirm command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `allow-message` and will be removed in v3)" + }, + { + "description": "Enables the message command without any pre-configured scope.", + "type": "string", + "const": "dialog:allow-message", + "markdownDescription": "Enables the message command without any pre-configured scope." + }, + { + "description": "Enables the open command without any pre-configured scope.", + "type": "string", + "const": "dialog:allow-open", + "markdownDescription": "Enables the open command without any pre-configured scope." + }, + { + "description": "Enables the save command without any pre-configured scope.", + "type": "string", + "const": "dialog:allow-save", + "markdownDescription": "Enables the save command without any pre-configured scope." + }, + { + "description": "Denies the ask command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `deny-message` and will be removed in v3)", + "type": "string", + "const": "dialog:deny-ask", + "markdownDescription": "Denies the ask command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `deny-message` and will be removed in v3)" + }, + { + "description": "Denies the confirm command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `deny-message` and will be removed in v3)", + "type": "string", + "const": "dialog:deny-confirm", + "markdownDescription": "Denies the confirm command without any pre-configured scope. (**DEPRECATED**: This is now an alias to `deny-message` and will be removed in v3)" + }, + { + "description": "Denies the message command without any pre-configured scope.", + "type": "string", + "const": "dialog:deny-message", + "markdownDescription": "Denies the message command without any pre-configured scope." + }, + { + "description": "Denies the open command without any pre-configured scope.", + "type": "string", + "const": "dialog:deny-open", + "markdownDescription": "Denies the open command without any pre-configured scope." + }, + { + "description": "Denies the save command without any pre-configured scope.", + "type": "string", + "const": "dialog:deny-save", + "markdownDescription": "Denies the save command without any pre-configured scope." + }, + { + "description": "This set of permissions describes the what kind of\nfile system access the `fs` plugin has enabled or denied by default.\n\n#### Granted Permissions\n\nThis default permission set enables read access to the\napplication specific directories (AppConfig, AppData, AppLocalData, AppCache,\nAppLog) and all files and sub directories created in it.\nThe location of these directories depends on the operating system,\nwhere the application is run.\n\nIn general these directories need to be manually created\nby the application at runtime, before accessing files or folders\nin it is possible.\n\nTherefore, it is also allowed to create all of these folders via\nthe `mkdir` command.\n\n#### Denied Permissions\n\nThis default permission set prevents access to critical components\nof the Tauri application by default.\nOn Windows the webview data folder access is denied.\n\n#### This default permission set includes:\n\n- `create-app-specific-dirs`\n- `read-app-specific-dirs-recursive`\n- `deny-default`", + "type": "string", + "const": "fs:default", + "markdownDescription": "This set of permissions describes the what kind of\nfile system access the `fs` plugin has enabled or denied by default.\n\n#### Granted Permissions\n\nThis default permission set enables read access to the\napplication specific directories (AppConfig, AppData, AppLocalData, AppCache,\nAppLog) and all files and sub directories created in it.\nThe location of these directories depends on the operating system,\nwhere the application is run.\n\nIn general these directories need to be manually created\nby the application at runtime, before accessing files or folders\nin it is possible.\n\nTherefore, it is also allowed to create all of these folders via\nthe `mkdir` command.\n\n#### Denied Permissions\n\nThis default permission set prevents access to critical components\nof the Tauri application by default.\nOn Windows the webview data folder access is denied.\n\n#### This default permission set includes:\n\n- `create-app-specific-dirs`\n- `read-app-specific-dirs-recursive`\n- `deny-default`" + }, + { + "description": "This allows non-recursive read access to metadata of the application folders, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-app-index`", + "type": "string", + "const": "fs:allow-app-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the application folders, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-app-index`" + }, + { + "description": "This allows full recursive read access to metadata of the application folders, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-app-recursive`", + "type": "string", + "const": "fs:allow-app-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the application folders, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-app-recursive`" + }, + { + "description": "This allows non-recursive read access to the application folders.\n#### This permission set includes:\n\n- `read-all`\n- `scope-app`", + "type": "string", + "const": "fs:allow-app-read", + "markdownDescription": "This allows non-recursive read access to the application folders.\n#### This permission set includes:\n\n- `read-all`\n- `scope-app`" + }, + { + "description": "This allows full recursive read access to the complete application folders, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-app-recursive`", + "type": "string", + "const": "fs:allow-app-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete application folders, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-app-recursive`" + }, + { + "description": "This allows non-recursive write access to the application folders.\n#### This permission set includes:\n\n- `write-all`\n- `scope-app`", + "type": "string", + "const": "fs:allow-app-write", + "markdownDescription": "This allows non-recursive write access to the application folders.\n#### This permission set includes:\n\n- `write-all`\n- `scope-app`" + }, + { + "description": "This allows full recursive write access to the complete application folders, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-app-recursive`", + "type": "string", + "const": "fs:allow-app-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete application folders, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-app-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appcache-index`", + "type": "string", + "const": "fs:allow-appcache-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appcache-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appcache-recursive`", + "type": "string", + "const": "fs:allow-appcache-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$APPCACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appcache-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$APPCACHE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appcache`", + "type": "string", + "const": "fs:allow-appcache-read", + "markdownDescription": "This allows non-recursive read access to the `$APPCACHE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appcache`" + }, + { + "description": "This allows full recursive read access to the complete `$APPCACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appcache-recursive`", + "type": "string", + "const": "fs:allow-appcache-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$APPCACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appcache-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$APPCACHE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appcache`", + "type": "string", + "const": "fs:allow-appcache-write", + "markdownDescription": "This allows non-recursive write access to the `$APPCACHE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appcache`" + }, + { + "description": "This allows full recursive write access to the complete `$APPCACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appcache-recursive`", + "type": "string", + "const": "fs:allow-appcache-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$APPCACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appcache-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appconfig-index`", + "type": "string", + "const": "fs:allow-appconfig-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appconfig-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appconfig-recursive`", + "type": "string", + "const": "fs:allow-appconfig-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$APPCONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appconfig-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$APPCONFIG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appconfig`", + "type": "string", + "const": "fs:allow-appconfig-read", + "markdownDescription": "This allows non-recursive read access to the `$APPCONFIG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appconfig`" + }, + { + "description": "This allows full recursive read access to the complete `$APPCONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appconfig-recursive`", + "type": "string", + "const": "fs:allow-appconfig-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$APPCONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appconfig-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$APPCONFIG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appconfig`", + "type": "string", + "const": "fs:allow-appconfig-write", + "markdownDescription": "This allows non-recursive write access to the `$APPCONFIG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appconfig`" + }, + { + "description": "This allows full recursive write access to the complete `$APPCONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appconfig-recursive`", + "type": "string", + "const": "fs:allow-appconfig-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$APPCONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appconfig-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appdata-index`", + "type": "string", + "const": "fs:allow-appdata-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appdata-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appdata-recursive`", + "type": "string", + "const": "fs:allow-appdata-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$APPDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-appdata-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$APPDATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appdata`", + "type": "string", + "const": "fs:allow-appdata-read", + "markdownDescription": "This allows non-recursive read access to the `$APPDATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appdata`" + }, + { + "description": "This allows full recursive read access to the complete `$APPDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appdata-recursive`", + "type": "string", + "const": "fs:allow-appdata-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$APPDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-appdata-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$APPDATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appdata`", + "type": "string", + "const": "fs:allow-appdata-write", + "markdownDescription": "This allows non-recursive write access to the `$APPDATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appdata`" + }, + { + "description": "This allows full recursive write access to the complete `$APPDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appdata-recursive`", + "type": "string", + "const": "fs:allow-appdata-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$APPDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-appdata-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applocaldata-index`", + "type": "string", + "const": "fs:allow-applocaldata-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applocaldata-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applocaldata-recursive`", + "type": "string", + "const": "fs:allow-applocaldata-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$APPLOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applocaldata-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$APPLOCALDATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applocaldata`", + "type": "string", + "const": "fs:allow-applocaldata-read", + "markdownDescription": "This allows non-recursive read access to the `$APPLOCALDATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applocaldata`" + }, + { + "description": "This allows full recursive read access to the complete `$APPLOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applocaldata-recursive`", + "type": "string", + "const": "fs:allow-applocaldata-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$APPLOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applocaldata-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$APPLOCALDATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applocaldata`", + "type": "string", + "const": "fs:allow-applocaldata-write", + "markdownDescription": "This allows non-recursive write access to the `$APPLOCALDATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applocaldata`" + }, + { + "description": "This allows full recursive write access to the complete `$APPLOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applocaldata-recursive`", + "type": "string", + "const": "fs:allow-applocaldata-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$APPLOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applocaldata-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applog-index`", + "type": "string", + "const": "fs:allow-applog-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applog-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applog-recursive`", + "type": "string", + "const": "fs:allow-applog-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$APPLOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-applog-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$APPLOG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applog`", + "type": "string", + "const": "fs:allow-applog-read", + "markdownDescription": "This allows non-recursive read access to the `$APPLOG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applog`" + }, + { + "description": "This allows full recursive read access to the complete `$APPLOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applog-recursive`", + "type": "string", + "const": "fs:allow-applog-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$APPLOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-applog-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$APPLOG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applog`", + "type": "string", + "const": "fs:allow-applog-write", + "markdownDescription": "This allows non-recursive write access to the `$APPLOG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applog`" + }, + { + "description": "This allows full recursive write access to the complete `$APPLOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applog-recursive`", + "type": "string", + "const": "fs:allow-applog-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$APPLOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-applog-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-audio-index`", + "type": "string", + "const": "fs:allow-audio-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-audio-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-audio-recursive`", + "type": "string", + "const": "fs:allow-audio-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$AUDIO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-audio-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$AUDIO` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-audio`", + "type": "string", + "const": "fs:allow-audio-read", + "markdownDescription": "This allows non-recursive read access to the `$AUDIO` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-audio`" + }, + { + "description": "This allows full recursive read access to the complete `$AUDIO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-audio-recursive`", + "type": "string", + "const": "fs:allow-audio-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$AUDIO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-audio-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$AUDIO` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-audio`", + "type": "string", + "const": "fs:allow-audio-write", + "markdownDescription": "This allows non-recursive write access to the `$AUDIO` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-audio`" + }, + { + "description": "This allows full recursive write access to the complete `$AUDIO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-audio-recursive`", + "type": "string", + "const": "fs:allow-audio-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$AUDIO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-audio-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-cache-index`", + "type": "string", + "const": "fs:allow-cache-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-cache-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-cache-recursive`", + "type": "string", + "const": "fs:allow-cache-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$CACHE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-cache-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$CACHE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-cache`", + "type": "string", + "const": "fs:allow-cache-read", + "markdownDescription": "This allows non-recursive read access to the `$CACHE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-cache`" + }, + { + "description": "This allows full recursive read access to the complete `$CACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-cache-recursive`", + "type": "string", + "const": "fs:allow-cache-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$CACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-cache-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$CACHE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-cache`", + "type": "string", + "const": "fs:allow-cache-write", + "markdownDescription": "This allows non-recursive write access to the `$CACHE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-cache`" + }, + { + "description": "This allows full recursive write access to the complete `$CACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-cache-recursive`", + "type": "string", + "const": "fs:allow-cache-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$CACHE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-cache-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-config-index`", + "type": "string", + "const": "fs:allow-config-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-config-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-config-recursive`", + "type": "string", + "const": "fs:allow-config-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$CONFIG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-config-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$CONFIG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-config`", + "type": "string", + "const": "fs:allow-config-read", + "markdownDescription": "This allows non-recursive read access to the `$CONFIG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-config`" + }, + { + "description": "This allows full recursive read access to the complete `$CONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-config-recursive`", + "type": "string", + "const": "fs:allow-config-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$CONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-config-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$CONFIG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-config`", + "type": "string", + "const": "fs:allow-config-write", + "markdownDescription": "This allows non-recursive write access to the `$CONFIG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-config`" + }, + { + "description": "This allows full recursive write access to the complete `$CONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-config-recursive`", + "type": "string", + "const": "fs:allow-config-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$CONFIG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-config-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$DATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-data-index`", + "type": "string", + "const": "fs:allow-data-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$DATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-data-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$DATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-data-recursive`", + "type": "string", + "const": "fs:allow-data-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$DATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-data-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$DATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-data`", + "type": "string", + "const": "fs:allow-data-read", + "markdownDescription": "This allows non-recursive read access to the `$DATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-data`" + }, + { + "description": "This allows full recursive read access to the complete `$DATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-data-recursive`", + "type": "string", + "const": "fs:allow-data-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$DATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-data-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$DATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-data`", + "type": "string", + "const": "fs:allow-data-write", + "markdownDescription": "This allows non-recursive write access to the `$DATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-data`" + }, + { + "description": "This allows full recursive write access to the complete `$DATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-data-recursive`", + "type": "string", + "const": "fs:allow-data-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$DATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-data-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-desktop-index`", + "type": "string", + "const": "fs:allow-desktop-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-desktop-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-desktop-recursive`", + "type": "string", + "const": "fs:allow-desktop-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$DESKTOP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-desktop-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$DESKTOP` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-desktop`", + "type": "string", + "const": "fs:allow-desktop-read", + "markdownDescription": "This allows non-recursive read access to the `$DESKTOP` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-desktop`" + }, + { + "description": "This allows full recursive read access to the complete `$DESKTOP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-desktop-recursive`", + "type": "string", + "const": "fs:allow-desktop-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$DESKTOP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-desktop-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$DESKTOP` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-desktop`", + "type": "string", + "const": "fs:allow-desktop-write", + "markdownDescription": "This allows non-recursive write access to the `$DESKTOP` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-desktop`" + }, + { + "description": "This allows full recursive write access to the complete `$DESKTOP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-desktop-recursive`", + "type": "string", + "const": "fs:allow-desktop-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$DESKTOP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-desktop-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-document-index`", + "type": "string", + "const": "fs:allow-document-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-document-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-document-recursive`", + "type": "string", + "const": "fs:allow-document-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$DOCUMENT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-document-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$DOCUMENT` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-document`", + "type": "string", + "const": "fs:allow-document-read", + "markdownDescription": "This allows non-recursive read access to the `$DOCUMENT` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-document`" + }, + { + "description": "This allows full recursive read access to the complete `$DOCUMENT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-document-recursive`", + "type": "string", + "const": "fs:allow-document-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$DOCUMENT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-document-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$DOCUMENT` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-document`", + "type": "string", + "const": "fs:allow-document-write", + "markdownDescription": "This allows non-recursive write access to the `$DOCUMENT` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-document`" + }, + { + "description": "This allows full recursive write access to the complete `$DOCUMENT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-document-recursive`", + "type": "string", + "const": "fs:allow-document-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$DOCUMENT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-document-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-download-index`", + "type": "string", + "const": "fs:allow-download-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-download-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-download-recursive`", + "type": "string", + "const": "fs:allow-download-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$DOWNLOAD` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-download-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$DOWNLOAD` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-download`", + "type": "string", + "const": "fs:allow-download-read", + "markdownDescription": "This allows non-recursive read access to the `$DOWNLOAD` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-download`" + }, + { + "description": "This allows full recursive read access to the complete `$DOWNLOAD` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-download-recursive`", + "type": "string", + "const": "fs:allow-download-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$DOWNLOAD` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-download-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$DOWNLOAD` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-download`", + "type": "string", + "const": "fs:allow-download-write", + "markdownDescription": "This allows non-recursive write access to the `$DOWNLOAD` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-download`" + }, + { + "description": "This allows full recursive write access to the complete `$DOWNLOAD` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-download-recursive`", + "type": "string", + "const": "fs:allow-download-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$DOWNLOAD` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-download-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$EXE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-exe-index`", + "type": "string", + "const": "fs:allow-exe-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$EXE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-exe-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$EXE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-exe-recursive`", + "type": "string", + "const": "fs:allow-exe-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$EXE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-exe-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$EXE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-exe`", + "type": "string", + "const": "fs:allow-exe-read", + "markdownDescription": "This allows non-recursive read access to the `$EXE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-exe`" + }, + { + "description": "This allows full recursive read access to the complete `$EXE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-exe-recursive`", + "type": "string", + "const": "fs:allow-exe-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$EXE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-exe-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$EXE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-exe`", + "type": "string", + "const": "fs:allow-exe-write", + "markdownDescription": "This allows non-recursive write access to the `$EXE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-exe`" + }, + { + "description": "This allows full recursive write access to the complete `$EXE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-exe-recursive`", + "type": "string", + "const": "fs:allow-exe-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$EXE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-exe-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$FONT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-font-index`", + "type": "string", + "const": "fs:allow-font-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$FONT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-font-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$FONT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-font-recursive`", + "type": "string", + "const": "fs:allow-font-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$FONT` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-font-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$FONT` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-font`", + "type": "string", + "const": "fs:allow-font-read", + "markdownDescription": "This allows non-recursive read access to the `$FONT` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-font`" + }, + { + "description": "This allows full recursive read access to the complete `$FONT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-font-recursive`", + "type": "string", + "const": "fs:allow-font-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$FONT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-font-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$FONT` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-font`", + "type": "string", + "const": "fs:allow-font-write", + "markdownDescription": "This allows non-recursive write access to the `$FONT` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-font`" + }, + { + "description": "This allows full recursive write access to the complete `$FONT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-font-recursive`", + "type": "string", + "const": "fs:allow-font-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$FONT` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-font-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$HOME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-home-index`", + "type": "string", + "const": "fs:allow-home-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$HOME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-home-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$HOME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-home-recursive`", + "type": "string", + "const": "fs:allow-home-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$HOME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-home-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$HOME` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-home`", + "type": "string", + "const": "fs:allow-home-read", + "markdownDescription": "This allows non-recursive read access to the `$HOME` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-home`" + }, + { + "description": "This allows full recursive read access to the complete `$HOME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-home-recursive`", + "type": "string", + "const": "fs:allow-home-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$HOME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-home-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$HOME` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-home`", + "type": "string", + "const": "fs:allow-home-write", + "markdownDescription": "This allows non-recursive write access to the `$HOME` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-home`" + }, + { + "description": "This allows full recursive write access to the complete `$HOME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-home-recursive`", + "type": "string", + "const": "fs:allow-home-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$HOME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-home-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-localdata-index`", + "type": "string", + "const": "fs:allow-localdata-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-localdata-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-localdata-recursive`", + "type": "string", + "const": "fs:allow-localdata-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$LOCALDATA` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-localdata-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$LOCALDATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-localdata`", + "type": "string", + "const": "fs:allow-localdata-read", + "markdownDescription": "This allows non-recursive read access to the `$LOCALDATA` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-localdata`" + }, + { + "description": "This allows full recursive read access to the complete `$LOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-localdata-recursive`", + "type": "string", + "const": "fs:allow-localdata-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$LOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-localdata-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$LOCALDATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-localdata`", + "type": "string", + "const": "fs:allow-localdata-write", + "markdownDescription": "This allows non-recursive write access to the `$LOCALDATA` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-localdata`" + }, + { + "description": "This allows full recursive write access to the complete `$LOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-localdata-recursive`", + "type": "string", + "const": "fs:allow-localdata-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$LOCALDATA` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-localdata-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$LOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-log-index`", + "type": "string", + "const": "fs:allow-log-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$LOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-log-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$LOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-log-recursive`", + "type": "string", + "const": "fs:allow-log-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$LOG` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-log-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$LOG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-log`", + "type": "string", + "const": "fs:allow-log-read", + "markdownDescription": "This allows non-recursive read access to the `$LOG` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-log`" + }, + { + "description": "This allows full recursive read access to the complete `$LOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-log-recursive`", + "type": "string", + "const": "fs:allow-log-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$LOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-log-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$LOG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-log`", + "type": "string", + "const": "fs:allow-log-write", + "markdownDescription": "This allows non-recursive write access to the `$LOG` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-log`" + }, + { + "description": "This allows full recursive write access to the complete `$LOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-log-recursive`", + "type": "string", + "const": "fs:allow-log-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$LOG` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-log-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-picture-index`", + "type": "string", + "const": "fs:allow-picture-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-picture-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-picture-recursive`", + "type": "string", + "const": "fs:allow-picture-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$PICTURE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-picture-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$PICTURE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-picture`", + "type": "string", + "const": "fs:allow-picture-read", + "markdownDescription": "This allows non-recursive read access to the `$PICTURE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-picture`" + }, + { + "description": "This allows full recursive read access to the complete `$PICTURE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-picture-recursive`", + "type": "string", + "const": "fs:allow-picture-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$PICTURE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-picture-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$PICTURE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-picture`", + "type": "string", + "const": "fs:allow-picture-write", + "markdownDescription": "This allows non-recursive write access to the `$PICTURE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-picture`" + }, + { + "description": "This allows full recursive write access to the complete `$PICTURE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-picture-recursive`", + "type": "string", + "const": "fs:allow-picture-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$PICTURE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-picture-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-public-index`", + "type": "string", + "const": "fs:allow-public-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-public-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-public-recursive`", + "type": "string", + "const": "fs:allow-public-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$PUBLIC` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-public-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$PUBLIC` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-public`", + "type": "string", + "const": "fs:allow-public-read", + "markdownDescription": "This allows non-recursive read access to the `$PUBLIC` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-public`" + }, + { + "description": "This allows full recursive read access to the complete `$PUBLIC` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-public-recursive`", + "type": "string", + "const": "fs:allow-public-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$PUBLIC` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-public-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$PUBLIC` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-public`", + "type": "string", + "const": "fs:allow-public-write", + "markdownDescription": "This allows non-recursive write access to the `$PUBLIC` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-public`" + }, + { + "description": "This allows full recursive write access to the complete `$PUBLIC` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-public-recursive`", + "type": "string", + "const": "fs:allow-public-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$PUBLIC` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-public-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-resource-index`", + "type": "string", + "const": "fs:allow-resource-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-resource-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-resource-recursive`", + "type": "string", + "const": "fs:allow-resource-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$RESOURCE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-resource-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$RESOURCE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-resource`", + "type": "string", + "const": "fs:allow-resource-read", + "markdownDescription": "This allows non-recursive read access to the `$RESOURCE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-resource`" + }, + { + "description": "This allows full recursive read access to the complete `$RESOURCE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-resource-recursive`", + "type": "string", + "const": "fs:allow-resource-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$RESOURCE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-resource-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$RESOURCE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-resource`", + "type": "string", + "const": "fs:allow-resource-write", + "markdownDescription": "This allows non-recursive write access to the `$RESOURCE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-resource`" + }, + { + "description": "This allows full recursive write access to the complete `$RESOURCE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-resource-recursive`", + "type": "string", + "const": "fs:allow-resource-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$RESOURCE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-resource-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-runtime-index`", + "type": "string", + "const": "fs:allow-runtime-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-runtime-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-runtime-recursive`", + "type": "string", + "const": "fs:allow-runtime-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$RUNTIME` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-runtime-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$RUNTIME` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-runtime`", + "type": "string", + "const": "fs:allow-runtime-read", + "markdownDescription": "This allows non-recursive read access to the `$RUNTIME` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-runtime`" + }, + { + "description": "This allows full recursive read access to the complete `$RUNTIME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-runtime-recursive`", + "type": "string", + "const": "fs:allow-runtime-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$RUNTIME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-runtime-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$RUNTIME` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-runtime`", + "type": "string", + "const": "fs:allow-runtime-write", + "markdownDescription": "This allows non-recursive write access to the `$RUNTIME` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-runtime`" + }, + { + "description": "This allows full recursive write access to the complete `$RUNTIME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-runtime-recursive`", + "type": "string", + "const": "fs:allow-runtime-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$RUNTIME` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-runtime-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-temp-index`", + "type": "string", + "const": "fs:allow-temp-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-temp-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-temp-recursive`", + "type": "string", + "const": "fs:allow-temp-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$TEMP` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-temp-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$TEMP` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-temp`", + "type": "string", + "const": "fs:allow-temp-read", + "markdownDescription": "This allows non-recursive read access to the `$TEMP` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-temp`" + }, + { + "description": "This allows full recursive read access to the complete `$TEMP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-temp-recursive`", + "type": "string", + "const": "fs:allow-temp-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$TEMP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-temp-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$TEMP` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-temp`", + "type": "string", + "const": "fs:allow-temp-write", + "markdownDescription": "This allows non-recursive write access to the `$TEMP` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-temp`" + }, + { + "description": "This allows full recursive write access to the complete `$TEMP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-temp-recursive`", + "type": "string", + "const": "fs:allow-temp-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$TEMP` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-temp-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-template-index`", + "type": "string", + "const": "fs:allow-template-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-template-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-template-recursive`", + "type": "string", + "const": "fs:allow-template-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$TEMPLATE` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-template-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$TEMPLATE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-template`", + "type": "string", + "const": "fs:allow-template-read", + "markdownDescription": "This allows non-recursive read access to the `$TEMPLATE` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-template`" + }, + { + "description": "This allows full recursive read access to the complete `$TEMPLATE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-template-recursive`", + "type": "string", + "const": "fs:allow-template-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$TEMPLATE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-template-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$TEMPLATE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-template`", + "type": "string", + "const": "fs:allow-template-write", + "markdownDescription": "This allows non-recursive write access to the `$TEMPLATE` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-template`" + }, + { + "description": "This allows full recursive write access to the complete `$TEMPLATE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-template-recursive`", + "type": "string", + "const": "fs:allow-template-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$TEMPLATE` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-template-recursive`" + }, + { + "description": "This allows non-recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-video-index`", + "type": "string", + "const": "fs:allow-video-meta", + "markdownDescription": "This allows non-recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-video-index`" + }, + { + "description": "This allows full recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-video-recursive`", + "type": "string", + "const": "fs:allow-video-meta-recursive", + "markdownDescription": "This allows full recursive read access to metadata of the `$VIDEO` folder, including file listing and statistics.\n#### This permission set includes:\n\n- `read-meta`\n- `scope-video-recursive`" + }, + { + "description": "This allows non-recursive read access to the `$VIDEO` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-video`", + "type": "string", + "const": "fs:allow-video-read", + "markdownDescription": "This allows non-recursive read access to the `$VIDEO` folder.\n#### This permission set includes:\n\n- `read-all`\n- `scope-video`" + }, + { + "description": "This allows full recursive read access to the complete `$VIDEO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-video-recursive`", + "type": "string", + "const": "fs:allow-video-read-recursive", + "markdownDescription": "This allows full recursive read access to the complete `$VIDEO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `read-all`\n- `scope-video-recursive`" + }, + { + "description": "This allows non-recursive write access to the `$VIDEO` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-video`", + "type": "string", + "const": "fs:allow-video-write", + "markdownDescription": "This allows non-recursive write access to the `$VIDEO` folder.\n#### This permission set includes:\n\n- `write-all`\n- `scope-video`" + }, + { + "description": "This allows full recursive write access to the complete `$VIDEO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-video-recursive`", + "type": "string", + "const": "fs:allow-video-write-recursive", + "markdownDescription": "This allows full recursive write access to the complete `$VIDEO` folder, files and subdirectories.\n#### This permission set includes:\n\n- `write-all`\n- `scope-video-recursive`" + }, + { + "description": "This denies access to dangerous Tauri relevant files and folders by default.\n#### This permission set includes:\n\n- `deny-webview-data-linux`\n- `deny-webview-data-windows`", + "type": "string", + "const": "fs:deny-default", + "markdownDescription": "This denies access to dangerous Tauri relevant files and folders by default.\n#### This permission set includes:\n\n- `deny-webview-data-linux`\n- `deny-webview-data-windows`" + }, + { + "description": "Enables the copy_file command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-copy-file", + "markdownDescription": "Enables the copy_file command without any pre-configured scope." + }, + { + "description": "Enables the create command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-create", + "markdownDescription": "Enables the create command without any pre-configured scope." + }, + { + "description": "Enables the exists command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-exists", + "markdownDescription": "Enables the exists command without any pre-configured scope." + }, + { + "description": "Enables the fstat command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-fstat", + "markdownDescription": "Enables the fstat command without any pre-configured scope." + }, + { + "description": "Enables the ftruncate command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-ftruncate", + "markdownDescription": "Enables the ftruncate command without any pre-configured scope." + }, + { + "description": "Enables the lstat command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-lstat", + "markdownDescription": "Enables the lstat command without any pre-configured scope." + }, + { + "description": "Enables the mkdir command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-mkdir", + "markdownDescription": "Enables the mkdir command without any pre-configured scope." + }, + { + "description": "Enables the open command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-open", + "markdownDescription": "Enables the open command without any pre-configured scope." + }, + { + "description": "Enables the read command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-read", + "markdownDescription": "Enables the read command without any pre-configured scope." + }, + { + "description": "Enables the read_dir command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-read-dir", + "markdownDescription": "Enables the read_dir command without any pre-configured scope." + }, + { + "description": "Enables the read_file command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-read-file", + "markdownDescription": "Enables the read_file command without any pre-configured scope." + }, + { + "description": "Enables the read_text_file command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-read-text-file", + "markdownDescription": "Enables the read_text_file command without any pre-configured scope." + }, + { + "description": "Enables the read_text_file_lines command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-read-text-file-lines", + "markdownDescription": "Enables the read_text_file_lines command without any pre-configured scope." + }, + { + "description": "Enables the read_text_file_lines_next command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-read-text-file-lines-next", + "markdownDescription": "Enables the read_text_file_lines_next command without any pre-configured scope." + }, + { + "description": "Enables the remove command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-remove", + "markdownDescription": "Enables the remove command without any pre-configured scope." + }, + { + "description": "Enables the rename command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-rename", + "markdownDescription": "Enables the rename command without any pre-configured scope." + }, + { + "description": "Enables the seek command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-seek", + "markdownDescription": "Enables the seek command without any pre-configured scope." + }, + { + "description": "Enables the size command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-size", + "markdownDescription": "Enables the size command without any pre-configured scope." + }, + { + "description": "Enables the start_accessing_security_scoped_resource command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-start-accessing-security-scoped-resource", + "markdownDescription": "Enables the start_accessing_security_scoped_resource command without any pre-configured scope." + }, + { + "description": "Enables the stat command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-stat", + "markdownDescription": "Enables the stat command without any pre-configured scope." + }, + { + "description": "Enables the stop_accessing_security_scoped_resource command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-stop-accessing-security-scoped-resource", + "markdownDescription": "Enables the stop_accessing_security_scoped_resource command without any pre-configured scope." + }, + { + "description": "Enables the truncate command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-truncate", + "markdownDescription": "Enables the truncate command without any pre-configured scope." + }, + { + "description": "Enables the unwatch command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-unwatch", + "markdownDescription": "Enables the unwatch command without any pre-configured scope." + }, + { + "description": "Enables the watch command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-watch", + "markdownDescription": "Enables the watch command without any pre-configured scope." + }, + { + "description": "Enables the write command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-write", + "markdownDescription": "Enables the write command without any pre-configured scope." + }, + { + "description": "Enables the write_file command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-write-file", + "markdownDescription": "Enables the write_file command without any pre-configured scope." + }, + { + "description": "Enables the write_text_file command without any pre-configured scope.", + "type": "string", + "const": "fs:allow-write-text-file", + "markdownDescription": "Enables the write_text_file command without any pre-configured scope." + }, + { + "description": "This permissions allows to create the application specific directories.\n", + "type": "string", + "const": "fs:create-app-specific-dirs", + "markdownDescription": "This permissions allows to create the application specific directories.\n" + }, + { + "description": "Denies the copy_file command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-copy-file", + "markdownDescription": "Denies the copy_file command without any pre-configured scope." + }, + { + "description": "Denies the create command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-create", + "markdownDescription": "Denies the create command without any pre-configured scope." + }, + { + "description": "Denies the exists command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-exists", + "markdownDescription": "Denies the exists command without any pre-configured scope." + }, + { + "description": "Denies the fstat command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-fstat", + "markdownDescription": "Denies the fstat command without any pre-configured scope." + }, + { + "description": "Denies the ftruncate command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-ftruncate", + "markdownDescription": "Denies the ftruncate command without any pre-configured scope." + }, + { + "description": "Denies the lstat command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-lstat", + "markdownDescription": "Denies the lstat command without any pre-configured scope." + }, + { + "description": "Denies the mkdir command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-mkdir", + "markdownDescription": "Denies the mkdir command without any pre-configured scope." + }, + { + "description": "Denies the open command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-open", + "markdownDescription": "Denies the open command without any pre-configured scope." + }, + { + "description": "Denies the read command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-read", + "markdownDescription": "Denies the read command without any pre-configured scope." + }, + { + "description": "Denies the read_dir command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-read-dir", + "markdownDescription": "Denies the read_dir command without any pre-configured scope." + }, + { + "description": "Denies the read_file command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-read-file", + "markdownDescription": "Denies the read_file command without any pre-configured scope." + }, + { + "description": "Denies the read_text_file command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-read-text-file", + "markdownDescription": "Denies the read_text_file command without any pre-configured scope." + }, + { + "description": "Denies the read_text_file_lines command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-read-text-file-lines", + "markdownDescription": "Denies the read_text_file_lines command without any pre-configured scope." + }, + { + "description": "Denies the read_text_file_lines_next command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-read-text-file-lines-next", + "markdownDescription": "Denies the read_text_file_lines_next command without any pre-configured scope." + }, + { + "description": "Denies the remove command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-remove", + "markdownDescription": "Denies the remove command without any pre-configured scope." + }, + { + "description": "Denies the rename command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-rename", + "markdownDescription": "Denies the rename command without any pre-configured scope." + }, + { + "description": "Denies the seek command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-seek", + "markdownDescription": "Denies the seek command without any pre-configured scope." + }, + { + "description": "Denies the size command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-size", + "markdownDescription": "Denies the size command without any pre-configured scope." + }, + { + "description": "Denies the start_accessing_security_scoped_resource command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-start-accessing-security-scoped-resource", + "markdownDescription": "Denies the start_accessing_security_scoped_resource command without any pre-configured scope." + }, + { + "description": "Denies the stat command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-stat", + "markdownDescription": "Denies the stat command without any pre-configured scope." + }, + { + "description": "Denies the stop_accessing_security_scoped_resource command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-stop-accessing-security-scoped-resource", + "markdownDescription": "Denies the stop_accessing_security_scoped_resource command without any pre-configured scope." + }, + { + "description": "Denies the truncate command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-truncate", + "markdownDescription": "Denies the truncate command without any pre-configured scope." + }, + { + "description": "Denies the unwatch command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-unwatch", + "markdownDescription": "Denies the unwatch command without any pre-configured scope." + }, + { + "description": "Denies the watch command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-watch", + "markdownDescription": "Denies the watch command without any pre-configured scope." + }, + { + "description": "This denies read access to the\n`$APPLOCALDATA` folder on linux as the webview data and configuration values are stored here.\nAllowing access can lead to sensitive information disclosure and should be well considered.", + "type": "string", + "const": "fs:deny-webview-data-linux", + "markdownDescription": "This denies read access to the\n`$APPLOCALDATA` folder on linux as the webview data and configuration values are stored here.\nAllowing access can lead to sensitive information disclosure and should be well considered." + }, + { + "description": "This denies read access to the\n`$APPLOCALDATA/EBWebView` folder on windows as the webview data and configuration values are stored here.\nAllowing access can lead to sensitive information disclosure and should be well considered.", + "type": "string", + "const": "fs:deny-webview-data-windows", + "markdownDescription": "This denies read access to the\n`$APPLOCALDATA/EBWebView` folder on windows as the webview data and configuration values are stored here.\nAllowing access can lead to sensitive information disclosure and should be well considered." + }, + { + "description": "Denies the write command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-write", + "markdownDescription": "Denies the write command without any pre-configured scope." + }, + { + "description": "Denies the write_file command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-write-file", + "markdownDescription": "Denies the write_file command without any pre-configured scope." + }, + { + "description": "Denies the write_text_file command without any pre-configured scope.", + "type": "string", + "const": "fs:deny-write-text-file", + "markdownDescription": "Denies the write_text_file command without any pre-configured scope." + }, + { + "description": "This enables all read related commands without any pre-configured accessible paths.", + "type": "string", + "const": "fs:read-all", + "markdownDescription": "This enables all read related commands without any pre-configured accessible paths." + }, + { + "description": "This permission allows recursive read functionality on the application\nspecific base directories. \n", + "type": "string", + "const": "fs:read-app-specific-dirs-recursive", + "markdownDescription": "This permission allows recursive read functionality on the application\nspecific base directories. \n" + }, + { + "description": "This enables directory read and file metadata related commands without any pre-configured accessible paths.", + "type": "string", + "const": "fs:read-dirs", + "markdownDescription": "This enables directory read and file metadata related commands without any pre-configured accessible paths." + }, + { + "description": "This enables file read related commands without any pre-configured accessible paths.", + "type": "string", + "const": "fs:read-files", + "markdownDescription": "This enables file read related commands without any pre-configured accessible paths." + }, + { + "description": "This enables all index or metadata related commands without any pre-configured accessible paths.", + "type": "string", + "const": "fs:read-meta", + "markdownDescription": "This enables all index or metadata related commands without any pre-configured accessible paths." + }, + { + "description": "An empty permission you can use to modify the global scope.\n\n## Example\n\n```json\n{\n \"identifier\": \"read-documents\",\n \"windows\": [\"main\"],\n \"permissions\": [\n \"fs:allow-read\",\n {\n \"identifier\": \"fs:scope\",\n \"allow\": [\n \"$APPDATA/documents/**/*\"\n ],\n \"deny\": [\n \"$APPDATA/documents/secret.txt\"\n ]\n }\n ]\n}\n```\n", + "type": "string", + "const": "fs:scope", + "markdownDescription": "An empty permission you can use to modify the global scope.\n\n## Example\n\n```json\n{\n \"identifier\": \"read-documents\",\n \"windows\": [\"main\"],\n \"permissions\": [\n \"fs:allow-read\",\n {\n \"identifier\": \"fs:scope\",\n \"allow\": [\n \"$APPDATA/documents/**/*\"\n ],\n \"deny\": [\n \"$APPDATA/documents/secret.txt\"\n ]\n }\n ]\n}\n```\n" + }, + { + "description": "This scope permits access to all files and list content of top level directories in the application folders.", + "type": "string", + "const": "fs:scope-app", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the application folders." + }, + { + "description": "This scope permits to list all files and folders in the application directories.", + "type": "string", + "const": "fs:scope-app-index", + "markdownDescription": "This scope permits to list all files and folders in the application directories." + }, + { + "description": "This scope permits recursive access to the complete application folders, including sub directories and files.", + "type": "string", + "const": "fs:scope-app-recursive", + "markdownDescription": "This scope permits recursive access to the complete application folders, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$APPCACHE` folder.", + "type": "string", + "const": "fs:scope-appcache", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$APPCACHE` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$APPCACHE`folder.", + "type": "string", + "const": "fs:scope-appcache-index", + "markdownDescription": "This scope permits to list all files and folders in the `$APPCACHE`folder." + }, + { + "description": "This scope permits recursive access to the complete `$APPCACHE` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-appcache-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$APPCACHE` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$APPCONFIG` folder.", + "type": "string", + "const": "fs:scope-appconfig", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$APPCONFIG` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$APPCONFIG`folder.", + "type": "string", + "const": "fs:scope-appconfig-index", + "markdownDescription": "This scope permits to list all files and folders in the `$APPCONFIG`folder." + }, + { + "description": "This scope permits recursive access to the complete `$APPCONFIG` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-appconfig-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$APPCONFIG` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$APPDATA` folder.", + "type": "string", + "const": "fs:scope-appdata", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$APPDATA` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$APPDATA`folder.", + "type": "string", + "const": "fs:scope-appdata-index", + "markdownDescription": "This scope permits to list all files and folders in the `$APPDATA`folder." + }, + { + "description": "This scope permits recursive access to the complete `$APPDATA` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-appdata-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$APPDATA` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$APPLOCALDATA` folder.", + "type": "string", + "const": "fs:scope-applocaldata", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$APPLOCALDATA` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$APPLOCALDATA`folder.", + "type": "string", + "const": "fs:scope-applocaldata-index", + "markdownDescription": "This scope permits to list all files and folders in the `$APPLOCALDATA`folder." + }, + { + "description": "This scope permits recursive access to the complete `$APPLOCALDATA` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-applocaldata-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$APPLOCALDATA` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$APPLOG` folder.", + "type": "string", + "const": "fs:scope-applog", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$APPLOG` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$APPLOG`folder.", + "type": "string", + "const": "fs:scope-applog-index", + "markdownDescription": "This scope permits to list all files and folders in the `$APPLOG`folder." + }, + { + "description": "This scope permits recursive access to the complete `$APPLOG` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-applog-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$APPLOG` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$AUDIO` folder.", + "type": "string", + "const": "fs:scope-audio", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$AUDIO` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$AUDIO`folder.", + "type": "string", + "const": "fs:scope-audio-index", + "markdownDescription": "This scope permits to list all files and folders in the `$AUDIO`folder." + }, + { + "description": "This scope permits recursive access to the complete `$AUDIO` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-audio-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$AUDIO` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$CACHE` folder.", + "type": "string", + "const": "fs:scope-cache", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$CACHE` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$CACHE`folder.", + "type": "string", + "const": "fs:scope-cache-index", + "markdownDescription": "This scope permits to list all files and folders in the `$CACHE`folder." + }, + { + "description": "This scope permits recursive access to the complete `$CACHE` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-cache-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$CACHE` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$CONFIG` folder.", + "type": "string", + "const": "fs:scope-config", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$CONFIG` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$CONFIG`folder.", + "type": "string", + "const": "fs:scope-config-index", + "markdownDescription": "This scope permits to list all files and folders in the `$CONFIG`folder." + }, + { + "description": "This scope permits recursive access to the complete `$CONFIG` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-config-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$CONFIG` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$DATA` folder.", + "type": "string", + "const": "fs:scope-data", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$DATA` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$DATA`folder.", + "type": "string", + "const": "fs:scope-data-index", + "markdownDescription": "This scope permits to list all files and folders in the `$DATA`folder." + }, + { + "description": "This scope permits recursive access to the complete `$DATA` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-data-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$DATA` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$DESKTOP` folder.", + "type": "string", + "const": "fs:scope-desktop", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$DESKTOP` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$DESKTOP`folder.", + "type": "string", + "const": "fs:scope-desktop-index", + "markdownDescription": "This scope permits to list all files and folders in the `$DESKTOP`folder." + }, + { + "description": "This scope permits recursive access to the complete `$DESKTOP` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-desktop-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$DESKTOP` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$DOCUMENT` folder.", + "type": "string", + "const": "fs:scope-document", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$DOCUMENT` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$DOCUMENT`folder.", + "type": "string", + "const": "fs:scope-document-index", + "markdownDescription": "This scope permits to list all files and folders in the `$DOCUMENT`folder." + }, + { + "description": "This scope permits recursive access to the complete `$DOCUMENT` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-document-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$DOCUMENT` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$DOWNLOAD` folder.", + "type": "string", + "const": "fs:scope-download", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$DOWNLOAD` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$DOWNLOAD`folder.", + "type": "string", + "const": "fs:scope-download-index", + "markdownDescription": "This scope permits to list all files and folders in the `$DOWNLOAD`folder." + }, + { + "description": "This scope permits recursive access to the complete `$DOWNLOAD` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-download-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$DOWNLOAD` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$EXE` folder.", + "type": "string", + "const": "fs:scope-exe", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$EXE` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$EXE`folder.", + "type": "string", + "const": "fs:scope-exe-index", + "markdownDescription": "This scope permits to list all files and folders in the `$EXE`folder." + }, + { + "description": "This scope permits recursive access to the complete `$EXE` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-exe-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$EXE` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$FONT` folder.", + "type": "string", + "const": "fs:scope-font", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$FONT` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$FONT`folder.", + "type": "string", + "const": "fs:scope-font-index", + "markdownDescription": "This scope permits to list all files and folders in the `$FONT`folder." + }, + { + "description": "This scope permits recursive access to the complete `$FONT` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-font-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$FONT` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$HOME` folder.", + "type": "string", + "const": "fs:scope-home", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$HOME` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$HOME`folder.", + "type": "string", + "const": "fs:scope-home-index", + "markdownDescription": "This scope permits to list all files and folders in the `$HOME`folder." + }, + { + "description": "This scope permits recursive access to the complete `$HOME` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-home-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$HOME` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$LOCALDATA` folder.", + "type": "string", + "const": "fs:scope-localdata", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$LOCALDATA` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$LOCALDATA`folder.", + "type": "string", + "const": "fs:scope-localdata-index", + "markdownDescription": "This scope permits to list all files and folders in the `$LOCALDATA`folder." + }, + { + "description": "This scope permits recursive access to the complete `$LOCALDATA` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-localdata-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$LOCALDATA` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$LOG` folder.", + "type": "string", + "const": "fs:scope-log", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$LOG` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$LOG`folder.", + "type": "string", + "const": "fs:scope-log-index", + "markdownDescription": "This scope permits to list all files and folders in the `$LOG`folder." + }, + { + "description": "This scope permits recursive access to the complete `$LOG` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-log-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$LOG` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$PICTURE` folder.", + "type": "string", + "const": "fs:scope-picture", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$PICTURE` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$PICTURE`folder.", + "type": "string", + "const": "fs:scope-picture-index", + "markdownDescription": "This scope permits to list all files and folders in the `$PICTURE`folder." + }, + { + "description": "This scope permits recursive access to the complete `$PICTURE` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-picture-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$PICTURE` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$PUBLIC` folder.", + "type": "string", + "const": "fs:scope-public", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$PUBLIC` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$PUBLIC`folder.", + "type": "string", + "const": "fs:scope-public-index", + "markdownDescription": "This scope permits to list all files and folders in the `$PUBLIC`folder." + }, + { + "description": "This scope permits recursive access to the complete `$PUBLIC` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-public-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$PUBLIC` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$RESOURCE` folder.", + "type": "string", + "const": "fs:scope-resource", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$RESOURCE` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$RESOURCE`folder.", + "type": "string", + "const": "fs:scope-resource-index", + "markdownDescription": "This scope permits to list all files and folders in the `$RESOURCE`folder." + }, + { + "description": "This scope permits recursive access to the complete `$RESOURCE` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-resource-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$RESOURCE` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$RUNTIME` folder.", + "type": "string", + "const": "fs:scope-runtime", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$RUNTIME` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$RUNTIME`folder.", + "type": "string", + "const": "fs:scope-runtime-index", + "markdownDescription": "This scope permits to list all files and folders in the `$RUNTIME`folder." + }, + { + "description": "This scope permits recursive access to the complete `$RUNTIME` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-runtime-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$RUNTIME` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$TEMP` folder.", + "type": "string", + "const": "fs:scope-temp", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$TEMP` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$TEMP`folder.", + "type": "string", + "const": "fs:scope-temp-index", + "markdownDescription": "This scope permits to list all files and folders in the `$TEMP`folder." + }, + { + "description": "This scope permits recursive access to the complete `$TEMP` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-temp-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$TEMP` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$TEMPLATE` folder.", + "type": "string", + "const": "fs:scope-template", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$TEMPLATE` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$TEMPLATE`folder.", + "type": "string", + "const": "fs:scope-template-index", + "markdownDescription": "This scope permits to list all files and folders in the `$TEMPLATE`folder." + }, + { + "description": "This scope permits recursive access to the complete `$TEMPLATE` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-template-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$TEMPLATE` folder, including sub directories and files." + }, + { + "description": "This scope permits access to all files and list content of top level directories in the `$VIDEO` folder.", + "type": "string", + "const": "fs:scope-video", + "markdownDescription": "This scope permits access to all files and list content of top level directories in the `$VIDEO` folder." + }, + { + "description": "This scope permits to list all files and folders in the `$VIDEO`folder.", + "type": "string", + "const": "fs:scope-video-index", + "markdownDescription": "This scope permits to list all files and folders in the `$VIDEO`folder." + }, + { + "description": "This scope permits recursive access to the complete `$VIDEO` folder, including sub directories and files.", + "type": "string", + "const": "fs:scope-video-recursive", + "markdownDescription": "This scope permits recursive access to the complete `$VIDEO` folder, including sub directories and files." + }, + { + "description": "This enables all write related commands without any pre-configured accessible paths.", + "type": "string", + "const": "fs:write-all", + "markdownDescription": "This enables all write related commands without any pre-configured accessible paths." + }, + { + "description": "This enables all file write related commands without any pre-configured accessible paths.", + "type": "string", + "const": "fs:write-files", + "markdownDescription": "This enables all file write related commands without any pre-configured accessible paths." + }, + { + "description": "This permission set configures which\nshell functionality is exposed by default.\n\n#### Granted Permissions\n\nIt allows to use the `open` functionality with a reasonable\nscope pre-configured. It will allow opening `http(s)://`,\n`tel:` and `mailto:` links.\n\n#### This default permission set includes:\n\n- `allow-open`", + "type": "string", + "const": "shell:default", + "markdownDescription": "This permission set configures which\nshell functionality is exposed by default.\n\n#### Granted Permissions\n\nIt allows to use the `open` functionality with a reasonable\nscope pre-configured. It will allow opening `http(s)://`,\n`tel:` and `mailto:` links.\n\n#### This default permission set includes:\n\n- `allow-open`" + }, + { + "description": "Enables the execute command without any pre-configured scope.", + "type": "string", + "const": "shell:allow-execute", + "markdownDescription": "Enables the execute command without any pre-configured scope." + }, + { + "description": "Enables the kill command without any pre-configured scope.", + "type": "string", + "const": "shell:allow-kill", + "markdownDescription": "Enables the kill command without any pre-configured scope." + }, + { + "description": "Enables the open command without any pre-configured scope.", + "type": "string", + "const": "shell:allow-open", + "markdownDescription": "Enables the open command without any pre-configured scope." + }, + { + "description": "Enables the spawn command without any pre-configured scope.", + "type": "string", + "const": "shell:allow-spawn", + "markdownDescription": "Enables the spawn command without any pre-configured scope." + }, + { + "description": "Enables the stdin_write command without any pre-configured scope.", + "type": "string", + "const": "shell:allow-stdin-write", + "markdownDescription": "Enables the stdin_write command without any pre-configured scope." + }, + { + "description": "Denies the execute command without any pre-configured scope.", + "type": "string", + "const": "shell:deny-execute", + "markdownDescription": "Denies the execute command without any pre-configured scope." + }, + { + "description": "Denies the kill command without any pre-configured scope.", + "type": "string", + "const": "shell:deny-kill", + "markdownDescription": "Denies the kill command without any pre-configured scope." + }, + { + "description": "Denies the open command without any pre-configured scope.", + "type": "string", + "const": "shell:deny-open", + "markdownDescription": "Denies the open command without any pre-configured scope." + }, + { + "description": "Denies the spawn command without any pre-configured scope.", + "type": "string", + "const": "shell:deny-spawn", + "markdownDescription": "Denies the spawn command without any pre-configured scope." + }, + { + "description": "Denies the stdin_write command without any pre-configured scope.", + "type": "string", + "const": "shell:deny-stdin-write", + "markdownDescription": "Denies the stdin_write command without any pre-configured scope." + } + ] + }, + "Value": { + "description": "All supported ACL values.", + "anyOf": [ + { + "description": "Represents a null JSON value.", + "type": "null" + }, + { + "description": "Represents a [`bool`].", + "type": "boolean" + }, + { + "description": "Represents a valid ACL [`Number`].", + "allOf": [ + { + "$ref": "#/definitions/Number" + } + ] + }, + { + "description": "Represents a [`String`].", + "type": "string" + }, + { + "description": "Represents a list of other [`Value`]s.", + "type": "array", + "items": { + "$ref": "#/definitions/Value" + } + }, + { + "description": "Represents a map of [`String`] keys to [`Value`]s.", + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/Value" + } + } + ] + }, + "Number": { + "description": "A valid ACL number.", + "anyOf": [ + { + "description": "Represents an [`i64`].", + "type": "integer", + "format": "int64" + }, + { + "description": "Represents a [`f64`].", + "type": "number", + "format": "double" + } + ] + }, + "Target": { + "description": "Platform target.", + "oneOf": [ + { + "description": "MacOS.", + "type": "string", + "enum": [ + "macOS" + ] + }, + { + "description": "Windows.", + "type": "string", + "enum": [ + "windows" + ] + }, + { + "description": "Linux.", + "type": "string", + "enum": [ + "linux" + ] + }, + { + "description": "Android.", + "type": "string", + "enum": [ + "android" + ] + }, + { + "description": "iOS.", + "type": "string", + "enum": [ + "iOS" + ] + } + ] + }, + "ShellScopeEntryAllowedArg": { + "description": "A command argument allowed to be executed by the webview API.", + "anyOf": [ + { + "description": "A non-configurable argument that is passed to the command in the order it was specified.", + "type": "string" + }, + { + "description": "A variable that is set while calling the command from the webview API.", + "type": "object", + "required": [ + "validator" + ], + "properties": { + "raw": { + "description": "Marks the validator as a raw regex, meaning the plugin should not make any modification at runtime.\n\nThis means the regex will not match on the entire string by default, which might be exploited if your regex allow unexpected input to be considered valid. When using this option, make sure your regex is correct.", + "default": false, + "type": "boolean" + }, + "validator": { + "description": "[regex] validator to require passed values to conform to an expected input.\n\nThis will require the argument value passed to this variable to match the `validator` regex before it will be executed.\n\nThe regex string is by default surrounded by `^...$` to match the full string. For example the `https?://\\w+` regex would be registered as `^https?://\\w+$`.\n\n[regex]: ", + "type": "string" + } + }, + "additionalProperties": false + } + ] + }, + "ShellScopeEntryAllowedArgs": { + "description": "A set of command arguments allowed to be executed by the webview API.\n\nA value of `true` will allow any arguments to be passed to the command. `false` will disable all arguments. A list of [`ShellScopeEntryAllowedArg`] will set those arguments as the only valid arguments to be passed to the attached command configuration.", + "anyOf": [ + { + "description": "Use a simple boolean to allow all or disable all arguments to this command configuration.", + "type": "boolean" + }, + { + "description": "A specific set of [`ShellScopeEntryAllowedArg`] that are valid to call for the command configuration.", + "type": "array", + "items": { + "$ref": "#/definitions/ShellScopeEntryAllowedArg" + } + } + ] + } + } +} \ No newline at end of file diff --git a/posimai-guard-app/src-tauri/icons/128x128.png b/posimai-guard-app/src-tauri/icons/128x128.png new file mode 100644 index 00000000..53987d00 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/128x128.png differ diff --git a/posimai-guard-app/src-tauri/icons/128x128@2x.png b/posimai-guard-app/src-tauri/icons/128x128@2x.png new file mode 100644 index 00000000..7d234229 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/128x128@2x.png differ diff --git a/posimai-guard-app/src-tauri/icons/32x32.png b/posimai-guard-app/src-tauri/icons/32x32.png new file mode 100644 index 00000000..d97f9c5a Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/32x32.png differ diff --git a/posimai-guard-app/src-tauri/icons/64x64.png b/posimai-guard-app/src-tauri/icons/64x64.png new file mode 100644 index 00000000..1cd4571b Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/64x64.png differ diff --git a/posimai-guard-app/src-tauri/icons/Square107x107Logo.png b/posimai-guard-app/src-tauri/icons/Square107x107Logo.png new file mode 100644 index 00000000..54412436 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/Square107x107Logo.png differ diff --git a/posimai-guard-app/src-tauri/icons/Square142x142Logo.png b/posimai-guard-app/src-tauri/icons/Square142x142Logo.png new file mode 100644 index 00000000..00951d4b Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/Square142x142Logo.png differ diff --git a/posimai-guard-app/src-tauri/icons/Square150x150Logo.png b/posimai-guard-app/src-tauri/icons/Square150x150Logo.png new file mode 100644 index 00000000..b4932d38 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/Square150x150Logo.png differ diff --git a/posimai-guard-app/src-tauri/icons/Square284x284Logo.png b/posimai-guard-app/src-tauri/icons/Square284x284Logo.png new file mode 100644 index 00000000..382ac55a Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/Square284x284Logo.png differ diff --git a/posimai-guard-app/src-tauri/icons/Square30x30Logo.png b/posimai-guard-app/src-tauri/icons/Square30x30Logo.png new file mode 100644 index 00000000..91dab6a9 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/Square30x30Logo.png differ diff --git a/posimai-guard-app/src-tauri/icons/Square310x310Logo.png b/posimai-guard-app/src-tauri/icons/Square310x310Logo.png new file mode 100644 index 00000000..a11726a6 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/Square310x310Logo.png differ diff --git a/posimai-guard-app/src-tauri/icons/Square44x44Logo.png b/posimai-guard-app/src-tauri/icons/Square44x44Logo.png new file mode 100644 index 00000000..9e293d77 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/Square44x44Logo.png differ diff --git a/posimai-guard-app/src-tauri/icons/Square71x71Logo.png b/posimai-guard-app/src-tauri/icons/Square71x71Logo.png new file mode 100644 index 00000000..d651cd67 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/Square71x71Logo.png differ diff --git a/posimai-guard-app/src-tauri/icons/Square89x89Logo.png b/posimai-guard-app/src-tauri/icons/Square89x89Logo.png new file mode 100644 index 00000000..aca21609 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/Square89x89Logo.png differ diff --git a/posimai-guard-app/src-tauri/icons/StoreLogo.png b/posimai-guard-app/src-tauri/icons/StoreLogo.png new file mode 100644 index 00000000..4b414861 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/StoreLogo.png differ diff --git a/posimai-guard-app/src-tauri/icons/android/mipmap-anydpi-v26/ic_launcher.xml b/posimai-guard-app/src-tauri/icons/android/mipmap-anydpi-v26/ic_launcher.xml new file mode 100644 index 00000000..2ffbf24b --- /dev/null +++ b/posimai-guard-app/src-tauri/icons/android/mipmap-anydpi-v26/ic_launcher.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/posimai-guard-app/src-tauri/icons/android/mipmap-hdpi/ic_launcher.png b/posimai-guard-app/src-tauri/icons/android/mipmap-hdpi/ic_launcher.png new file mode 100644 index 00000000..dcbedab8 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/android/mipmap-hdpi/ic_launcher.png differ diff --git a/posimai-guard-app/src-tauri/icons/android/mipmap-hdpi/ic_launcher_foreground.png b/posimai-guard-app/src-tauri/icons/android/mipmap-hdpi/ic_launcher_foreground.png new file mode 100644 index 00000000..a55a3ebf Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/android/mipmap-hdpi/ic_launcher_foreground.png differ diff --git a/posimai-guard-app/src-tauri/icons/android/mipmap-hdpi/ic_launcher_round.png b/posimai-guard-app/src-tauri/icons/android/mipmap-hdpi/ic_launcher_round.png new file mode 100644 index 00000000..f88b62f7 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/android/mipmap-hdpi/ic_launcher_round.png differ diff --git a/posimai-guard-app/src-tauri/icons/android/mipmap-mdpi/ic_launcher.png b/posimai-guard-app/src-tauri/icons/android/mipmap-mdpi/ic_launcher.png new file mode 100644 index 00000000..c61e6fef Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/android/mipmap-mdpi/ic_launcher.png differ diff --git a/posimai-guard-app/src-tauri/icons/android/mipmap-mdpi/ic_launcher_foreground.png b/posimai-guard-app/src-tauri/icons/android/mipmap-mdpi/ic_launcher_foreground.png new file mode 100644 index 00000000..9cfaf3de Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/android/mipmap-mdpi/ic_launcher_foreground.png differ diff --git a/posimai-guard-app/src-tauri/icons/android/mipmap-mdpi/ic_launcher_round.png b/posimai-guard-app/src-tauri/icons/android/mipmap-mdpi/ic_launcher_round.png new file mode 100644 index 00000000..b17d3f87 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/android/mipmap-mdpi/ic_launcher_round.png differ diff --git a/posimai-guard-app/src-tauri/icons/android/mipmap-xhdpi/ic_launcher.png b/posimai-guard-app/src-tauri/icons/android/mipmap-xhdpi/ic_launcher.png new file mode 100644 index 00000000..20de9beb Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/android/mipmap-xhdpi/ic_launcher.png differ diff --git a/posimai-guard-app/src-tauri/icons/android/mipmap-xhdpi/ic_launcher_foreground.png b/posimai-guard-app/src-tauri/icons/android/mipmap-xhdpi/ic_launcher_foreground.png new file mode 100644 index 00000000..363dc36e Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/android/mipmap-xhdpi/ic_launcher_foreground.png differ diff --git a/posimai-guard-app/src-tauri/icons/android/mipmap-xhdpi/ic_launcher_round.png b/posimai-guard-app/src-tauri/icons/android/mipmap-xhdpi/ic_launcher_round.png new file mode 100644 index 00000000..330ec917 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/android/mipmap-xhdpi/ic_launcher_round.png differ diff --git a/posimai-guard-app/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher.png b/posimai-guard-app/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 00000000..2fd9eef3 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher.png differ diff --git a/posimai-guard-app/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_foreground.png b/posimai-guard-app/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_foreground.png new file mode 100644 index 00000000..6b9f89c7 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_foreground.png differ diff --git a/posimai-guard-app/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_round.png b/posimai-guard-app/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_round.png new file mode 100644 index 00000000..2e810159 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_round.png differ diff --git a/posimai-guard-app/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher.png b/posimai-guard-app/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 00000000..70bb7864 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher.png differ diff --git a/posimai-guard-app/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_foreground.png b/posimai-guard-app/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_foreground.png new file mode 100644 index 00000000..9451b185 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_foreground.png differ diff --git a/posimai-guard-app/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_round.png b/posimai-guard-app/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_round.png new file mode 100644 index 00000000..a880e1a2 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_round.png differ diff --git a/posimai-guard-app/src-tauri/icons/android/values/ic_launcher_background.xml b/posimai-guard-app/src-tauri/icons/android/values/ic_launcher_background.xml new file mode 100644 index 00000000..ea9c223a --- /dev/null +++ b/posimai-guard-app/src-tauri/icons/android/values/ic_launcher_background.xml @@ -0,0 +1,4 @@ + + + #fff + \ No newline at end of file diff --git a/posimai-guard-app/src-tauri/icons/icon.icns b/posimai-guard-app/src-tauri/icons/icon.icns new file mode 100644 index 00000000..a1e66198 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/icon.icns differ diff --git a/posimai-guard-app/src-tauri/icons/icon.ico b/posimai-guard-app/src-tauri/icons/icon.ico new file mode 100644 index 00000000..8d40be41 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/icon.ico differ diff --git a/posimai-guard-app/src-tauri/icons/icon.png b/posimai-guard-app/src-tauri/icons/icon.png new file mode 100644 index 00000000..82d00b86 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/icon.png differ diff --git a/posimai-guard-app/src-tauri/icons/ios/AppIcon-20x20@1x.png b/posimai-guard-app/src-tauri/icons/ios/AppIcon-20x20@1x.png new file mode 100644 index 00000000..86f77dbf Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/ios/AppIcon-20x20@1x.png differ diff --git a/posimai-guard-app/src-tauri/icons/ios/AppIcon-20x20@2x-1.png b/posimai-guard-app/src-tauri/icons/ios/AppIcon-20x20@2x-1.png new file mode 100644 index 00000000..2f53aa33 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/ios/AppIcon-20x20@2x-1.png differ diff --git a/posimai-guard-app/src-tauri/icons/ios/AppIcon-20x20@2x.png b/posimai-guard-app/src-tauri/icons/ios/AppIcon-20x20@2x.png new file mode 100644 index 00000000..2f53aa33 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/ios/AppIcon-20x20@2x.png differ diff --git a/posimai-guard-app/src-tauri/icons/ios/AppIcon-20x20@3x.png b/posimai-guard-app/src-tauri/icons/ios/AppIcon-20x20@3x.png new file mode 100644 index 00000000..cfb8f255 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/ios/AppIcon-20x20@3x.png differ diff --git a/posimai-guard-app/src-tauri/icons/ios/AppIcon-29x29@1x.png b/posimai-guard-app/src-tauri/icons/ios/AppIcon-29x29@1x.png new file mode 100644 index 00000000..1a3b75a8 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/ios/AppIcon-29x29@1x.png differ diff --git a/posimai-guard-app/src-tauri/icons/ios/AppIcon-29x29@2x-1.png b/posimai-guard-app/src-tauri/icons/ios/AppIcon-29x29@2x-1.png new file mode 100644 index 00000000..01368e85 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/ios/AppIcon-29x29@2x-1.png differ diff --git a/posimai-guard-app/src-tauri/icons/ios/AppIcon-29x29@2x.png b/posimai-guard-app/src-tauri/icons/ios/AppIcon-29x29@2x.png new file mode 100644 index 00000000..01368e85 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/ios/AppIcon-29x29@2x.png differ diff --git a/posimai-guard-app/src-tauri/icons/ios/AppIcon-29x29@3x.png b/posimai-guard-app/src-tauri/icons/ios/AppIcon-29x29@3x.png new file mode 100644 index 00000000..a082faa4 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/ios/AppIcon-29x29@3x.png differ diff --git a/posimai-guard-app/src-tauri/icons/ios/AppIcon-40x40@1x.png b/posimai-guard-app/src-tauri/icons/ios/AppIcon-40x40@1x.png new file mode 100644 index 00000000..2f53aa33 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/ios/AppIcon-40x40@1x.png differ diff --git a/posimai-guard-app/src-tauri/icons/ios/AppIcon-40x40@2x-1.png b/posimai-guard-app/src-tauri/icons/ios/AppIcon-40x40@2x-1.png new file mode 100644 index 00000000..2d963c32 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/ios/AppIcon-40x40@2x-1.png differ diff --git a/posimai-guard-app/src-tauri/icons/ios/AppIcon-40x40@2x.png b/posimai-guard-app/src-tauri/icons/ios/AppIcon-40x40@2x.png new file mode 100644 index 00000000..2d963c32 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/ios/AppIcon-40x40@2x.png differ diff --git a/posimai-guard-app/src-tauri/icons/ios/AppIcon-40x40@3x.png b/posimai-guard-app/src-tauri/icons/ios/AppIcon-40x40@3x.png new file mode 100644 index 00000000..dd500d9a Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/ios/AppIcon-40x40@3x.png differ diff --git a/posimai-guard-app/src-tauri/icons/ios/AppIcon-512@2x.png b/posimai-guard-app/src-tauri/icons/ios/AppIcon-512@2x.png new file mode 100644 index 00000000..5f28945d Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/ios/AppIcon-512@2x.png differ diff --git a/posimai-guard-app/src-tauri/icons/ios/AppIcon-60x60@2x.png b/posimai-guard-app/src-tauri/icons/ios/AppIcon-60x60@2x.png new file mode 100644 index 00000000..dd500d9a Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/ios/AppIcon-60x60@2x.png differ diff --git a/posimai-guard-app/src-tauri/icons/ios/AppIcon-60x60@3x.png b/posimai-guard-app/src-tauri/icons/ios/AppIcon-60x60@3x.png new file mode 100644 index 00000000..5e2be05a Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/ios/AppIcon-60x60@3x.png differ diff --git a/posimai-guard-app/src-tauri/icons/ios/AppIcon-76x76@1x.png b/posimai-guard-app/src-tauri/icons/ios/AppIcon-76x76@1x.png new file mode 100644 index 00000000..5c36a53e Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/ios/AppIcon-76x76@1x.png differ diff --git a/posimai-guard-app/src-tauri/icons/ios/AppIcon-76x76@2x.png b/posimai-guard-app/src-tauri/icons/ios/AppIcon-76x76@2x.png new file mode 100644 index 00000000..95fe5341 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/ios/AppIcon-76x76@2x.png differ diff --git a/posimai-guard-app/src-tauri/icons/ios/AppIcon-83.5x83.5@2x.png b/posimai-guard-app/src-tauri/icons/ios/AppIcon-83.5x83.5@2x.png new file mode 100644 index 00000000..1f4e8128 Binary files /dev/null and b/posimai-guard-app/src-tauri/icons/ios/AppIcon-83.5x83.5@2x.png differ diff --git a/posimai-guard-app/src-tauri/tauri.conf.json b/posimai-guard-app/src-tauri/tauri.conf.json index 0d885a1a..e9057bb1 100644 --- a/posimai-guard-app/src-tauri/tauri.conf.json +++ b/posimai-guard-app/src-tauri/tauri.conf.json @@ -3,10 +3,8 @@ "version": "0.1.0", "identifier": "com.posimai.guard", "build": { - "frontendDist": "../dist", - "devUrl": "http://localhost:1420", - "beforeDevCommand": "npm run dev", - "beforeBuildCommand": "npm run build" + "frontendDist": "https://guard.posimai.soar-enrich.com", + "devUrl": "https://guard.posimai.soar-enrich.com" }, "app": { "windows": [ @@ -37,9 +35,5 @@ "icons/icon.ico" ] }, - "plugins": { - "shell": { - "open": true - } - } + "plugins": {} } diff --git a/posimai-guard-ext/package.json b/posimai-guard-ext/package.json index b17b4aa8..25bd33f3 100644 --- a/posimai-guard-ext/package.json +++ b/posimai-guard-ext/package.json @@ -2,7 +2,7 @@ "name": "posimai-guard", "displayName": "Guard — AIコードセキュリティスキャナー", "description": "AIが生成したコードのセキュリティリスクをワークスペース内で直接検出します", - "version": "0.1.0", + "version": "0.2.0", "publisher": "posimai", "engines": { "vscode": "^1.85.0" }, "categories": ["Linters", "Other"], @@ -26,6 +26,14 @@ "command": "guard.setApiKeys", "title": "Guard: APIキーを設定" }, + { + "command": "guard.scanGitHistory", + "title": "Guard: git履歴のシークレットをスキャン" + }, + { + "command": "guard.scanDeps", + "title": "Guard: 依存関係(CVE・ライセンス)をスキャン" + }, { "command": "guard.clearDiagnostics", "title": "Guard: 診断をクリア" @@ -41,6 +49,8 @@ "commandPalette": [ { "command": "guard.scanWorkspace" }, { "command": "guard.scanFile" }, + { "command": "guard.scanGitHistory" }, + { "command": "guard.scanDeps" }, { "command": "guard.setApiKeys" }, { "command": "guard.clearDiagnostics" } ] diff --git a/posimai-guard-ext/src/commands/scanDeps.ts b/posimai-guard-ext/src/commands/scanDeps.ts new file mode 100644 index 00000000..3aeb55cc --- /dev/null +++ b/posimai-guard-ext/src/commands/scanDeps.ts @@ -0,0 +1,163 @@ +import * as vscode from 'vscode'; +import * as fs from 'fs'; +import * as path from 'path'; +import * as https from 'https'; +import { ResultsPanel } from '../ui/resultsPanel'; +import type { ScanIssue } from '../scanner/prompt'; + +const COPYLEFT = new Set([ + 'GPL-2.0', 'GPL-3.0', 'GPL-2.0-only', 'GPL-3.0-only', + 'AGPL-3.0', 'AGPL-3.0-only', 'LGPL-2.1', 'LGPL-3.0', +]); + +function httpsPost(url: string, body: string): Promise { + return new Promise((resolve, reject) => { + const parsed = new URL(url); + const req = https.request( + { hostname: parsed.hostname, path: parsed.pathname, method: 'POST', headers: { 'Content-Type': 'application/json' } }, + res => { + const chunks: Buffer[] = []; + res.on('data', d => chunks.push(d)); + res.on('end', () => resolve(Buffer.concat(chunks).toString('utf-8'))); + }, + ); + req.on('error', reject); + req.write(body); + req.end(); + }); +} + +function httpsGet(url: string): Promise { + return new Promise((resolve, reject) => { + https.get(url, { headers: { Accept: 'application/json' } }, res => { + const chunks: Buffer[] = []; + res.on('data', d => chunks.push(d)); + res.on('end', () => resolve(Buffer.concat(chunks).toString('utf-8'))); + }).on('error', reject); + }); +} + +function parseDeps(pkgJson: string): { name: string; version: string; isDev: boolean }[] { + const parsed = JSON.parse(pkgJson); + const prod = Object.entries(parsed.dependencies ?? {}).map(([name, ver]) => ({ + name, version: String(ver).replace(/^[\^~>=<*]/, '').split(' ')[0], isDev: false, + })); + const dev = Object.entries(parsed.devDependencies ?? {}).map(([name, ver]) => ({ + name, version: String(ver).replace(/^[\^~>=<*]/, '').split(' ')[0], isDev: true, + })); + return [...prod, ...dev]; +} + +export async function scanDeps( + context: vscode.ExtensionContext, +): Promise { + const folders = vscode.workspace.workspaceFolders; + if (!folders || folders.length === 0) { + vscode.window.showWarningMessage('Guard: ワークスペースが開かれていません'); + return; + } + + const pkgPath = path.join(folders[0].uri.fsPath, 'package.json'); + if (!fs.existsSync(pkgPath)) { + vscode.window.showWarningMessage('Guard: package.json が見つかりません'); + return; + } + + const pkgJson = fs.readFileSync(pkgPath, 'utf-8'); + let deps: ReturnType; + try { + deps = parseDeps(pkgJson); + } catch { + vscode.window.showErrorMessage('Guard: package.json の解析に失敗しました'); + return; + } + + await vscode.window.withProgress( + { location: vscode.ProgressLocation.Notification, title: 'Guard: 依存関係をスキャン中...', cancellable: false }, + async progress => { + const issues: ScanIssue[] = []; + + // ── CVE (OSV.dev) ── + progress.report({ message: `CVE照合中 (${deps.length} パッケージ)...` }); + try { + const CHUNK = 200; + for (let i = 0; i < deps.length; i += CHUNK) { + const chunk = deps.slice(i, i + CHUNK); + const body = JSON.stringify({ + queries: chunk.map(d => ({ package: { name: d.name, ecosystem: 'npm' }, version: d.version })), + }); + const raw = await httpsPost('https://api.osv.dev/v1/querybatch', body); + const data = JSON.parse(raw) as { results: { vulns?: { id: string; summary?: string; aliases?: string[] }[] }[] }; + for (let j = 0; j < chunk.length; j++) { + const vulns = data.results[j]?.vulns ?? []; + for (const v of vulns) { + const cve = v.aliases?.find(a => a.startsWith('CVE-')) ?? v.id; + issues.push({ + severity: 'danger', + title: `CVE: ${chunk[j].name}`, + description: `${v.summary ?? '既知の脆弱性'} (${cve})`, + file: 'package.json', + line: null, + fix: `npm update ${chunk[j].name}`, + }); + } + } + } + } catch { + // OSV.dev 失敗は無視 + } + + // ── ライセンス ── + progress.report({ message: 'ライセンス確認中...' }); + const prodDeps = deps.filter(d => !d.isDev).slice(0, 40); + await Promise.allSettled( + prodDeps.map(async d => { + try { + const raw = await httpsGet(`https://registry.npmjs.org/${d.name}/latest`); + const data = JSON.parse(raw) as { license?: string; deprecated?: string }; + const license = data.license ?? 'UNKNOWN'; + if (data.deprecated) { + issues.push({ + severity: 'warning', + title: `非推奨: ${d.name}`, + description: String(data.deprecated).slice(0, 120), + file: 'package.json', line: null, + fix: `npm install <代替パッケージ> # npm info ${d.name} を確認`, + }); + } else if (!license || license === 'UNKNOWN' || license === 'UNLICENSED') { + issues.push({ + severity: 'info', + title: `ライセンス不明: ${d.name}`, + description: '商用利用前にライセンス確認が必要です', + file: 'package.json', line: null, fix: null, + }); + } else { + const spdx = license.replace(/[()]/g, '').split(/\s+(?:OR|AND)\s+/); + if (spdx.some(l => COPYLEFT.has(l.trim()))) { + issues.push({ + severity: 'warning', + title: `コピーレフト: ${d.name}`, + description: `${license} ライセンス。商用クローズドソース製品への組み込みは法的確認が必要です`, + file: 'package.json', line: null, fix: null, + }); + } + } + } catch { /* skip */ } + }), + ); + + ResultsPanel.show(context, issues, 'package.json (CVE + License)'); + + const cveCount = issues.filter(i => i.title.startsWith('CVE:')).length; + const licenseCount = issues.length - cveCount; + const msg = `Guard: CVE ${cveCount}件 / ライセンス問題 ${licenseCount}件`; + if (cveCount > 0) { + vscode.window.showErrorMessage(msg); + } else if (licenseCount > 0) { + vscode.window.showWarningMessage(msg); + } else { + vscode.window.showInformationMessage('Guard: 依存関係に問題は見つかりませんでした'); + } + }, + ); +} diff --git a/posimai-guard-ext/src/commands/scanFile.ts b/posimai-guard-ext/src/commands/scanFile.ts index 92057ba6..537042c2 100644 --- a/posimai-guard-ext/src/commands/scanFile.ts +++ b/posimai-guard-ext/src/commands/scanFile.ts @@ -5,6 +5,8 @@ import { scanWithClaude } from '../scanner/claudeClient'; import { issuesToDiagnostics } from '../ui/diagnostics'; import { ResultsPanel } from '../ui/resultsPanel'; import { ScanIssue } from '../scanner/prompt'; +// Rule engine: deterministic scan — no API key required +import { runRuleEngine } from '../../../posimai-guard/src/lib/ruleEngine'; export async function scanFile( context: vscode.ExtensionContext, @@ -16,18 +18,6 @@ export async function scanFile( return; } - const geminiKey = await context.secrets.get('guard.geminiKey'); - if (!geminiKey) { - const action = await vscode.window.showErrorMessage( - 'Guard: Gemini API キーが未設定です', - 'APIキーを設定', - ); - if (action === 'APIキーを設定') { - await vscode.commands.executeCommand('guard.setApiKeys'); - } - return; - } - const config = vscode.workspace.getConfiguration('guard'); const model: string = config.get('model') ?? 'gemini'; @@ -41,21 +31,33 @@ export async function scanFile( cancellable: false, }, async () => { - let issues: ScanIssue[] = []; + // ── Step 1: Rule engine (instant, no API key) ────────────── + const ruleIssues = runRuleEngine(files) as unknown as ScanIssue[]; + const seen = new Set(ruleIssues.map(i => `${i.file}::${i.title}`)); + let issues: ScanIssue[] = [...ruleIssues]; - try { - issues = await scanWithGemini(files, geminiKey); - } catch (err) { - vscode.window.showErrorMessage(`Guard: Gemini スキャンに失敗しました: ${String(err)}`); - return; + // ── Step 2: Gemini (optional) ───────────────────────────── + const geminiKey = await context.secrets.get('guard.geminiKey'); + if (geminiKey && (model === 'gemini' || model === 'both')) { + try { + const geminiIssues = await scanWithGemini(files, geminiKey); + for (const gi of geminiIssues) { + if (!seen.has(`${gi.file}::${gi.title}`)) { + issues.push(gi); + seen.add(`${gi.file}::${gi.title}`); + } + } + } catch { + // optional + } } + // ── Step 3: Claude (optional) ───────────────────────────── if (model === 'claude' || model === 'both') { const claudeKey = await context.secrets.get('guard.claudeKey'); if (claudeKey) { try { const claudeIssues = await scanWithClaude(files, claudeKey); - const seen = new Set(issues.map(i => `${i.file}::${i.title}`)); for (const ci of claudeIssues) { if (!seen.has(`${ci.file}::${ci.title}`)) { issues.push(ci); diff --git a/posimai-guard-ext/src/commands/scanGitHistory.ts b/posimai-guard-ext/src/commands/scanGitHistory.ts new file mode 100644 index 00000000..5b64f916 --- /dev/null +++ b/posimai-guard-ext/src/commands/scanGitHistory.ts @@ -0,0 +1,142 @@ +import * as vscode from 'vscode'; +import * as cp from 'child_process'; +import * as path from 'path'; +import { ResultsPanel } from '../ui/resultsPanel'; +import { issuesToDiagnostics } from '../ui/diagnostics'; +import type { ScanIssue } from '../scanner/prompt'; + +// シークレットパターン +const SECRET_PATTERNS: { re: RegExp; title: string }[] = [ + { re: /(?:api[_-]?key|apikey)\s*[:=]\s*['"]?([A-Za-z0-9_\-]{20,})['"]?/i, title: 'APIキーがコミットに含まれている' }, + { re: /(?:password|passwd|secret|token)\s*[:=]\s*['"]?([^\s'"]{8,})['"]?/i, title: 'パスワード/トークンがコミットに含まれている' }, + { re: /sk-[a-zA-Z0-9]{48}/, title: 'OpenAI APIキーがコミットに含まれている' }, + { re: /sk-ant-[a-zA-Z0-9\-]{40,}/, title: 'Anthropic APIキーがコミットに含まれている' }, + { re: /AIza[0-9A-Za-z_\-]{35}/, title: 'Google APIキーがコミットに含まれている' }, + { re: /AKIA[0-9A-Z]{16}/, title: 'AWS アクセスキーがコミットに含まれている' }, + { re: /gh[pousr]_[A-Za-z0-9_]{36}/, title: 'GitHub トークンがコミットに含まれている' }, + { re: /-----BEGIN (?:RSA|EC|DSA|OPENSSH) PRIVATE KEY-----/, title: '秘密鍵がコミットに含まれている' }, + { re: /(?:mongodb|postgres|mysql|redis):\/\/[^\s'"]+:[^\s'"@]+@/, title: 'DB接続文字列(認証情報付き)がコミットに含まれている' }, +]; + +interface GitFinding { + commit: string; + file: string; + line: string; + pattern: string; + snippet: string; +} + +function spawnGit(args: string[], cwd: string): string { + try { + const result = cp.spawnSync('git', args, { cwd, encoding: 'utf-8', maxBuffer: 10 * 1024 * 1024, timeout: 30000 }); + return result.stdout ?? ''; + } catch { + return ''; + } +} + +function scanDiff(diff: string, commitHash: string): GitFinding[] { + const findings: GitFinding[] = []; + let currentFile = ''; + + for (const rawLine of diff.split('\n')) { + if (rawLine.startsWith('+++ b/')) { + currentFile = rawLine.slice(6).trim(); + continue; + } + if (!rawLine.startsWith('+') || rawLine.startsWith('+++')) continue; + const line = rawLine.slice(1); + + for (const { re, title } of SECRET_PATTERNS) { + if (re.test(line)) { + // 実際の値をマスクして表示 + const masked = line.replace(re, (m) => m.slice(0, 6) + '****'); + findings.push({ + commit: commitHash, + file: currentFile, + line: masked.trim().slice(0, 120), + pattern: title, + snippet: masked.trim(), + }); + break; // 1行につき1パターンまで + } + } + } + + return findings; +} + +export async function scanGitHistory( + context: vscode.ExtensionContext, + collection: vscode.DiagnosticCollection, +): Promise { + const folders = vscode.workspace.workspaceFolders; + if (!folders || folders.length === 0) { + vscode.window.showWarningMessage('Guard: ワークスペースが開かれていません'); + return; + } + const root = folders[0].uri.fsPath; + + // gitリポジトリ確認 + const gitCheck = spawnGit(['rev-parse', '--git-dir'], root); + if (!gitCheck.trim()) { + vscode.window.showWarningMessage('Guard: gitリポジトリが見つかりません'); + return; + } + + await vscode.window.withProgress( + { location: vscode.ProgressLocation.Notification, title: 'Guard: git履歴をスキャン中...', cancellable: false }, + async progress => { + progress.report({ message: 'コミット一覧を取得中...' }); + + // 直近100コミットのハッシュ取得 + const logOut = spawnGit(['log', '--oneline', '-100', '--format=%H'], root); + const commits = logOut.split('\n').map(l => l.trim()).filter(Boolean); + + if (commits.length === 0) { + vscode.window.showInformationMessage('Guard: コミット履歴がありません'); + return; + } + + const allFindings: GitFinding[] = []; + + for (let i = 0; i < commits.length; i++) { + const hash = commits[i]; + progress.report({ message: `${i + 1}/${commits.length} コミットを検査中...`, increment: 100 / commits.length }); + + // 追加行のみを対象にdiff取得 + const diff = spawnGit(['show', '--diff-filter=A', '-U0', hash], root); + const found = scanDiff(diff, hash.slice(0, 8)); + allFindings.push(...found); + } + + // 重複除去(同じファイル×パターン) + const seen = new Set(); + const unique = allFindings.filter(f => { + const key = `${f.file}::${f.pattern}`; + if (seen.has(key)) return false; + seen.add(key); + return true; + }); + + // ScanIssue に変換 + const issues: ScanIssue[] = unique.map(f => ({ + severity: 'danger' as const, + title: f.pattern, + description: `コミット ${f.commit} の ${f.file} に含まれています。git履歴から完全に削除してください(BFG Repo-Cleaner推奨)。`, + file: f.file, + line: null, + fix: 'npx bfg --delete-files # または git filter-repo を使用して履歴から削除', + })); + + issuesToDiagnostics(issues, collection); + ResultsPanel.show(context, issues, `git履歴 (${commits.length}コミット)`); + + if (issues.length === 0) { + vscode.window.showInformationMessage('Guard: git履歴にシークレットは検出されませんでした'); + } else { + vscode.window.showErrorMessage(`Guard: git履歴に ${issues.length} 件のシークレットが含まれています`); + } + }, + ); +} diff --git a/posimai-guard-ext/src/commands/scanWorkspace.ts b/posimai-guard-ext/src/commands/scanWorkspace.ts index df9292b2..1aa17df6 100644 --- a/posimai-guard-ext/src/commands/scanWorkspace.ts +++ b/posimai-guard-ext/src/commands/scanWorkspace.ts @@ -5,6 +5,8 @@ import { scanWithClaude } from '../scanner/claudeClient'; import { issuesToDiagnostics } from '../ui/diagnostics'; import { ResultsPanel } from '../ui/resultsPanel'; import { ScanIssue } from '../scanner/prompt'; +// Rule engine: deterministic scan — no API key required +import { runRuleEngine } from '../../../posimai-guard/src/lib/ruleEngine'; export async function scanWorkspace( context: vscode.ExtensionContext, @@ -16,18 +18,6 @@ export async function scanWorkspace( return; } - const geminiKey = await context.secrets.get('guard.geminiKey'); - if (!geminiKey) { - const action = await vscode.window.showErrorMessage( - 'Guard: Gemini API キーが未設定です', - 'APIキーを設定', - ); - if (action === 'APIキーを設定') { - await vscode.commands.executeCommand('guard.setApiKeys'); - } - return; - } - const config = vscode.workspace.getConfiguration('guard'); const maxFiles: number = config.get('maxFiles') ?? 80; const model: string = config.get('model') ?? 'gemini'; @@ -48,24 +38,39 @@ export async function scanWorkspace( } const sourceName = folders[0].name; - let issues: ScanIssue[] = []; - try { - progress.report({ message: `Gemini でスキャン中... (${files.length} ファイル)` }); - issues = await scanWithGemini(files, geminiKey); - } catch (err) { - vscode.window.showErrorMessage(`Guard: Gemini スキャンに失敗しました: ${String(err)}`); - return; + // ── Step 1: Rule engine (instant, no API key) ────────────── + progress.report({ message: `静的ルール解析中... (${files.length} ファイル)` }); + const ruleIssues = runRuleEngine(files) as unknown as ScanIssue[]; + + // Show rule engine results immediately + const seen = new Set(ruleIssues.map(i => `${i.file}::${i.title}`)); + let issues: ScanIssue[] = [...ruleIssues]; + + // ── Step 2: Gemini (optional — deeper semantic analysis) ─── + const geminiKey = await context.secrets.get('guard.geminiKey'); + if (geminiKey && (model === 'gemini' || model === 'both')) { + try { + progress.report({ message: 'Gemini でセマンティック解析中...' }); + const geminiIssues = await scanWithGemini(files, geminiKey); + for (const gi of geminiIssues) { + if (!seen.has(`${gi.file}::${gi.title}`)) { + issues.push(gi); + seen.add(`${gi.file}::${gi.title}`); + } + } + } catch { + // Gemini is optional — silent fail + } } + // ── Step 3: Claude (optional) ───────────────────────────── if (model === 'claude' || model === 'both') { const claudeKey = await context.secrets.get('guard.claudeKey'); if (claudeKey) { try { - progress.report({ message: 'Claude でスキャン中...' }); + progress.report({ message: 'Claude でセマンティック解析中...' }); const claudeIssues = await scanWithClaude(files, claudeKey); - // Merge: dedup by file + title - const seen = new Set(issues.map(i => `${i.file}::${i.title}`)); for (const ci of claudeIssues) { if (!seen.has(`${ci.file}::${ci.title}`)) { issues.push(ci); @@ -83,7 +88,10 @@ export async function scanWorkspace( const danger = issues.filter(i => i.severity === 'danger').length; const warning = issues.filter(i => i.severity === 'warning').length; - const msg = `Guard: ${issues.length} 件検出 (危険 ${danger} / 警告 ${warning})`; + const ruleCount = ruleIssues.length; + const aiCount = issues.length - ruleCount; + const aiNote = aiCount > 0 ? ` (+AI ${aiCount})` : ''; + const msg = `Guard: ${issues.length} 件検出 (危険 ${danger} / 警告 ${warning})${aiNote}`; if (danger > 0) { vscode.window.showErrorMessage(msg); diff --git a/posimai-guard-ext/src/extension.ts b/posimai-guard-ext/src/extension.ts index d12ad263..d9f4fb5a 100644 --- a/posimai-guard-ext/src/extension.ts +++ b/posimai-guard-ext/src/extension.ts @@ -1,6 +1,8 @@ import * as vscode from 'vscode'; import { scanWorkspace } from './commands/scanWorkspace'; import { scanFile } from './commands/scanFile'; +import { scanGitHistory } from './commands/scanGitHistory'; +import { scanDeps } from './commands/scanDeps'; let diagnosticCollection: vscode.DiagnosticCollection; @@ -11,7 +13,7 @@ export function activate(context: vscode.ExtensionContext): void { // Status bar item const statusBar = vscode.window.createStatusBarItem(vscode.StatusBarAlignment.Right, 100); statusBar.text = '$(shield) Guard'; - statusBar.tooltip = 'Guard: ワークスペースをスキャン'; + statusBar.tooltip = 'Guard: ワークスペースをスキャン(APIキー不要)'; statusBar.command = 'guard.scanWorkspace'; statusBar.show(); context.subscriptions.push(statusBar); @@ -63,6 +65,14 @@ export function activate(context: vscode.ExtensionContext): void { } }), + vscode.commands.registerCommand('guard.scanGitHistory', () => + scanGitHistory(context, diagnosticCollection), + ), + + vscode.commands.registerCommand('guard.scanDeps', () => + scanDeps(context), + ), + vscode.commands.registerCommand('guard.clearDiagnostics', () => { diagnosticCollection.clear(); vscode.window.showInformationMessage('Guard: 診断をクリアしました'); diff --git a/posimai-guard-ext/tsconfig.json b/posimai-guard-ext/tsconfig.json index 8485ea3a..3dee3141 100644 --- a/posimai-guard-ext/tsconfig.json +++ b/posimai-guard-ext/tsconfig.json @@ -4,7 +4,6 @@ "module": "commonjs", "lib": ["ES2020"], "outDir": "./dist", - "rootDir": "./src", "strict": true, "esModuleInterop": true, "skipLibCheck": true, diff --git a/posimai-log b/posimai-log index 40dace3d..abd706a9 160000 --- a/posimai-log +++ b/posimai-log @@ -1 +1 @@ -Subproject commit 40dace3dddf681af4f7f3bb54717a6900441e7e4 +Subproject commit abd706a9e63d4c114a947551ff9996d4ff7ad58f diff --git a/posimai-roadmap b/posimai-roadmap new file mode 160000 index 00000000..06d36bf4 --- /dev/null +++ b/posimai-roadmap @@ -0,0 +1 @@ +Subproject commit 06d36bf4a203f624de03458e910cd99232dcc993 diff --git a/posimai-station-app b/posimai-station-app new file mode 160000 index 00000000..9d0ab604 --- /dev/null +++ b/posimai-station-app @@ -0,0 +1 @@ +Subproject commit 9d0ab6043e80cdb011d63cb219b540c1b941d2c3 diff --git a/posimai-store b/posimai-store index 0533f6fe..59c8dfe7 160000 --- a/posimai-store +++ b/posimai-store @@ -1 +1 @@ -Subproject commit 0533f6fe8cc3a48f58b8346a6e9cada68567e530 +Subproject commit 59c8dfe7230048c22aff701e9f638c87eb52a6c6 diff --git a/posimai-veil b/posimai-veil new file mode 160000 index 00000000..23199824 --- /dev/null +++ b/posimai-veil @@ -0,0 +1 @@ +Subproject commit 23199824456d981f6aaede27cafd25868cef8532 diff --git a/scripts/check-registrations.js b/scripts/check-registrations.js new file mode 100644 index 00000000..4922ddd0 --- /dev/null +++ b/scripts/check-registrations.js @@ -0,0 +1,105 @@ +#!/usr/bin/env node +/** + * check-registrations.js + * 新規アプリがすべての登録ファイルに存在するかを一括検証する + * 使い方: node scripts/check-registrations.js [app-id] + * app-id を省略すると全アプリを一括チェック + */ + +import { readFileSync, existsSync } from 'fs'; +import { join, dirname } from 'path'; +import { fileURLToPath } from 'url'; + +const __dirname = dirname(fileURLToPath(import.meta.url)); +const ROOT = join(__dirname, '..'); + +// 登録が必要なファイル +const TARGETS = [ + { + label: 'projects.json', + path: 'posimai-dashboard/src/data/projects.json', + check: (content, id) => { + const data = JSON.parse(content); + return data.projects.some(p => p.id === id); + }, + }, + { + label: 'apps/page.tsx (APP_CATEGORIES)', + path: 'posimai-dashboard/src/app/apps/page.tsx', + check: (content, id) => content.includes(`"${id}"`), + }, + { + label: 'ecosystem/page.tsx (NODES)', + path: 'posimai-dashboard/src/app/ecosystem/page.tsx', + check: (content, id) => { + // id は "posimai-xxx" → node id は "xxx" + const shortId = id.replace(/^posimai-/, ''); + return content.includes(`id: "${shortId}"`) || content.includes(`id: "${id}"`); + }, + }, + { + label: 'roadmap.json', + path: 'posimai-roadmap/roadmap.json', + check: (content, id) => { + const data = JSON.parse(content); + return (data.apps ?? []).concat(data.other ?? []).some(a => a.id === id) + || content.includes(`"id": "${id}"`); + }, + }, + { + label: 'timeline/page.tsx (直近イベント)', + path: 'posimai-dashboard/src/app/timeline/page.tsx', + check: (content, id) => content.includes(`"${id}"`), + }, + { + label: 'atlas.json', + path: 'posimai-atlas/atlas.json', + check: (content, id) => { + // atlas は posimai-apps ノードにまとめて記載する設計なので + // short id (guard) または full id (posimai-guard) が含まれればOK + const shortId = id.replace(/^posimai-/, ''); + return content.includes(id) || content.includes(shortId); + }, + }, +]; + +// チェック対象のアプリID(引数 or 全 posimai-* ディレクトリ) +function getAppIds() { + const arg = process.argv[2]; + if (arg) return [arg]; + // projects.json から全IDを取得 + const pjson = JSON.parse(readFileSync(join(ROOT, 'posimai-dashboard/src/data/projects.json'), 'utf8')); + return pjson.projects.map(p => p.id); +} + +function run() { + const appIds = getAppIds(); + let anyFail = false; + + for (const id of appIds) { + const missing = []; + for (const target of TARGETS) { + const filePath = join(ROOT, target.path); + if (!existsSync(filePath)) { missing.push(`${target.label} (ファイル不在)`); continue; } + const content = readFileSync(filePath, 'utf8'); + if (!target.check(content, id)) missing.push(target.label); + } + + if (missing.length > 0) { + anyFail = true; + console.log(`\n[MISSING] ${id}`); + missing.forEach(m => console.log(` - ${m}`)); + } else { + console.log(`[OK] ${id}`); + } + } + + if (anyFail) { + console.log('\n登録が不足しているアプリがあります。CLAUDE.md の「アプリ追加・更新時」ルールを確認してください。'); + process.exit(1); + } else { + console.log('\n全アプリの登録は完了しています。'); + } +} + +run(); diff --git a/scripts/new-app.sh b/scripts/new-app.sh index 20d095ae..1b6f9220 100644 --- a/scripts/new-app.sh +++ b/scripts/new-app.sh @@ -124,3 +124,15 @@ echo " # コードを編集して..." echo " git add . && git commit -m \"feat: ...\"" echo " npm run deploy" echo "" +echo " =========================================" +echo " [必須] 以下のファイルへの登録を忘れずに:" +echo " - posimai-dashboard/src/data/projects.json" +echo " - posimai-dashboard/src/app/apps/page.tsx" +echo " - posimai-dashboard/src/app/ecosystem/page.tsx" +echo " - posimai-dashboard/src/app/timeline/page.tsx" +echo " - posimai-roadmap/roadmap.json" +echo " - posimai-atlas/atlas.json" +echo "" +echo " 登録後に確認: node scripts/check-registrations.js $APP_ID" +echo " =========================================" +echo "" diff --git a/scripts/start-postgres-mcp.sh b/scripts/start-postgres-mcp.sh new file mode 100644 index 00000000..a60cc717 --- /dev/null +++ b/scripts/start-postgres-mcp.sh @@ -0,0 +1,40 @@ +#!/usr/bin/env bash +# PostgreSQL MCP トンネル + サーバー起動スクリプト +# 使い方: .mcp.json から自動呼び出し +# 認証情報は .mcp.json (gitignore済み) に記載 + +set -e + +VPS_HOST="root@85.131.245.239" +VPS_KEY="$HOME/.ssh/soar-enrich-openssh.pem" +TUNNEL_PORT=15432 +CONTAINER="posimai-db-1" + +# Docker コンテナ IP を動的取得(コンテナ再作成時も対応) +DOCKER_IP=$(ssh -i "$VPS_KEY" -o BatchMode=yes -o ConnectTimeout=10 "$VPS_HOST" \ + "docker inspect ${CONTAINER} --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}'" 2>/dev/null) +if [ -z "$DOCKER_IP" ]; then + echo "[MCP] ERROR: ${CONTAINER} の IP 取得失敗。VPS/コンテナを確認してください。" >&2 + exit 1 +fi +echo "[MCP] ${CONTAINER} IP: ${DOCKER_IP}" >&2 + +# 既存トンネルの確認 +if ! ss -tlnp 2>/dev/null | grep -q ":$TUNNEL_PORT" && \ + ! netstat -an 2>/dev/null | grep -q "127.0.0.1:$TUNNEL_PORT"; then + echo "[MCP] SSH トンネル起動中..." >&2 + ssh -i "$VPS_KEY" \ + -o BatchMode=yes \ + -o ExitOnForwardFailure=yes \ + -o ServerAliveInterval=30 \ + -fN \ + -L "${TUNNEL_PORT}:${DOCKER_IP}:5432" \ + "$VPS_HOST" + sleep 1 + echo "[MCP] トンネル起動完了 localhost:${TUNNEL_PORT}" >&2 +else + echo "[MCP] トンネル既に起動済み localhost:${TUNNEL_PORT}" >&2 +fi + +# MCP サーバー起動 (接続文字列は .mcp.json の引数から渡される) +exec "$@" diff --git a/tools/posimai-scribe/.env.example b/tools/posimai-scribe/.env.example new file mode 100644 index 00000000..10652fde --- /dev/null +++ b/tools/posimai-scribe/.env.example @@ -0,0 +1,9 @@ +# Posimai Scribe — environment variables +# Copy this file to .env and fill in your values. + +# Gemini API key (required) +# Get yours at: https://aistudio.google.com/app/apikey +GEMINI_API_KEY=your_gemini_api_key_here + +# Model to use for blog generation (optional, default: gemini-2.0-flash) +# GEMINI_MODEL=gemini-2.0-flash diff --git a/tools/posimai-scribe/diary.md b/tools/posimai-scribe/diary.md new file mode 100644 index 00000000..c9eb8534 --- /dev/null +++ b/tools/posimai-scribe/diary.md @@ -0,0 +1,9 @@ +# diary.md — Optional notes / poem injection + +Write anything here when you feel like it. +No format required. One word or a whole paragraph — both work. +This file is read by `npm run generate` and woven into the blog article. + +Leave it empty if you have nothing to add. The system works without it. + +--- diff --git a/tools/posimai-scribe/drafts/2026-04-02.md b/tools/posimai-scribe/drafts/2026-04-02.md new file mode 100644 index 00000000..6b0f9ca7 --- /dev/null +++ b/tools/posimai-scribe/drafts/2026-04-02.md @@ -0,0 +1,39 @@ +# コードなきアーキテクト、ターミナルを統べる — コックピット化の夜明け前 + +## 本日のテーマと直面した課題 + +「Stationを開発環境と稼働状況をまるっと確認できるコックピット」にするという、壮大なビジョン。本日、私はその礎を固めるべく、幾つものレイヤーに跨るタスクを orchestrate していた。 + +今日の中心テーマは、AI駆動の執筆支援ツールである`posimai-scribe`のセットアップと、私自身の活動記録をリアルタイムで可視化する`posimai-log`リポジトリの創設、そしてそのVercelデプロイまでを一連の流れで実現することだった。加えて、既存のコックピットUI、`station-b.html`に、VPSやVercelのデプロイ状況を統合し、より洗練されたインテリジェンスを提供するための調整も喫緊の課題として存在した。 + +最大の課題は、コードを直接書くことなく、これら複雑なインフラ、アプリケーション、AI連携をいかにして「支配」し、私のアーキテクチャ構想をターミナル越しに紡ぎ上げるか、という点にあった。 + +## 葛藤と試行錯誤 + +まず、`posimai-scribe`の心臓部を動かすために、Node.js環境を整備する。`npm install`がターミナルに走り、依存関係が解決されていく。`cd /c/Users/maita/posimai-project/tools/posimai-scribe && npm install`。この一連のシーケンスが、後の知的生産の基盤となる。まるで無機質なマトリックスに生命の息吹を吹き込むような感覚だ。 + +次に、私の活動ログを記録する`posimai-log`の立ち上げだ。ただのリポジトリではない。`gh repo create posimai/posimai-log --private --description "Architect without Co"`。そう、このブログ記事のタイトルそのものをDescriptionに刻み込む。GitHub、Gitea、Vercelの三つ巴連携を、一行の`Bash`コマンドで繋ぎ合わせる。`git remote add gitea http://100.76.7.3:3000/mai/posimai-log.git && git remote ad`。そして、自動デプロイのトリガーとして、`git commit --allow-empty -m "ci: trigger initial Vercel deployment"`。空のコミットを一つ送り込むだけで、Vercelのパイプラインが起動し、自動的に環境が構築されていく。この支配感は、静的なコードを書くのとはまた異なる、ダイナミックな快楽を伴う。 + +この間、`station-b.html`のUI調整も同時並行で進む。コミットログには`fix: remove ubuntu pc binbars, reduce machines gap to 8px`、`fix: services fixed 460px, vitals 1fr for wider layout`といった、ピクセル単位での執拗な調整が並ぶ。広大なコードベースの中から、必要なピースを`grep -n "posimai-journal\|posimai-log\|access\|APPS"`コマンドで探し出す。非エンジニアであろうと、このターミナル上のデジタル指紋が、私がシステムを深く理解し、支配している証左だ。一行一行のコマンドが、私の思考を具現化し、システムに新たな命を吹き込んでいく。 + +そして、未来のビジョン、Phase 2で掲げられた「Gemini API 残量カウンター」に向けた布石も打つ。`cd /c/Users/maita/posimai-project/tools/posimai-scribe && npm install @google/ge`。新しいAIライブラリがインストールされ、`GEMINI_API_KEY`が`.env`ファイルに静かに書き込まれていく。AIが私の意図を読み取り、世界と対話するためのパスウェイが、一つまた一つと開かれていく様は、まさにデジタル時代の錬金術だ。 + +## 到達した解決策 + +今日の作業により、幾つもの重要なマイルストーンをクリアした。 + +まず、`posimai-log`リポジトリは無事に初期化され、GitHubとGiteaにミラーリングされた。そしてVercel上での自動デプロイ体制も確立。これからは、私の「コードを書かないアーキテクト」としての活動ログが、リアルタイムに可視化されていく。自身のクリエイティブな足跡をデータとして捉え、分析するための基盤が整ったのだ。 + +Stationコックピットは、`station-b.html`の度重なる調整と、Vercelデプロイ状況の表示機能追加(Gitコミット `feat: vercel deploy status in ecosystem bar` を参照)により、その情報密度と操作性を高めた。VPSパネルの統合(`feat: add VPS panel`)も進み、より包括的な監視が可能となった。私の脳内にあるコックピットのイメージが、画面上で徐々に具現化されていく。 + +最も重要なのは、Gemini APIキーの設置だ。これにより、今後のPhase 2で計画されている「Gemini API 残量カウンター」の実装に向けた基盤が整備された。AIがシステムの稼働状況を監視し、私にインサイトを提供する、そのためのパスウェイが着々と開かれている。 + +ターミナルの奥深くで、コマンドが流れ、ファイルが生成され、コミットが積み重なっていく。この連鎖が、私が意図したアーキテクチャを、着実に現実へと変換していく。今日のShadow Logには、私の思考の軌跡が、`ok: true`の緑色の光と共に刻まれている。 + +## アーキテクトとしての所感 + +「コードを書かない」という制約は、もはや幻想だ。私はコードを書かない。だが、システムを構築し、インフラを整備し、アプリケーションを連携させ、未来のビジョンを実現するためのコマンドを「書く」。この指先がキーボードを叩くたびに、私の知性がデジタル世界を掌握していく。 + +ターミナルに流れる`Bash`ログの羅列は、私がシステムと対話した証。`Edit`や`Write`ツールの成功ログは、AIが私の意図を正確に解釈し、成果物として昇華させた証明。その一つ一つが`ok: true`と返されるたびに、脳内の回路に微かな電流が走り、唇の端がニヤリと歪む。これこそ、私が追い求めるハッカー的快感だ。 + +DXに挫折した非エンジニアよ、恐れるな。指先一つでコマンドを叩き、AIに指示を出し、複雑なアーキテクチャ全体を俯瞰し、支配する「Architect without Code」の道が、ここにある。未来のコックピットは、私の手中で、そして私の知性の中で、着実にその形を成し始めている。私はコードを書かない。だが、このシステムは、私の意志によって支配されている。それが、ターミナルの奥で静かに、しかし確かに脈打つログの真実だ。 \ No newline at end of file diff --git a/tools/posimai-scribe/drafts/prompt-2026-04-02.md b/tools/posimai-scribe/drafts/prompt-2026-04-02.md new file mode 100644 index 00000000..94ed591f --- /dev/null +++ b/tools/posimai-scribe/drafts/prompt-2026-04-02.md @@ -0,0 +1,117 @@ + +# Posimai Architect - Daily Context (Date: 2026-04-02) + +あなたはPosimaiプロジェクトの専属AIとして、本日の「AI駆動開発のすったもんだ奮闘記」をブログ記事(Markdown形式)として執筆してください。 + +## 1. 本日のShadow Logs (ユーザーの感情・出来事) +```jsonlines +{"timestamp":"2026-04-02T13:43:06.910Z","message":"Antigravity(AI)と協力して、完全自動ブログ生成のプロトタイプ基盤を構築完了。魔法の準備が整った!"} +``` + +## 2. 本日のGit Commits (何を作ったか) +```text +74959df fix: service cards fill height, unify cpu labels +32038e2 fix: services 2-col 3-row, vitals wider 300px, rings larger +6c3f4b7 fix: load .env at startup, fix vercel created field, services 3-col, vps no binbar +3d1d599 fix: merge machines panel 4-col layout, fix vps-health ok field +f5817eb feat: vercel deploy status in ecosystem bar, deploy rule in CLAUDE.md +90ac87d fix: Posimai API check via /api/vps-health proxy, add favicon +759915e feat: add deploy-dev.sh — scp + restart bypasses Syncthing lag +f2ef81f fix: proxy VPS health via /api/vps-health to avoid browser cert errors +5cbf66d feat: add VPS panel (5-column layout), real-time VPS metrics from api.soar-enrich.com +8d9f4e2 feat: extend /health endpoint with OS metrics for Station cockpit +465c943 feat: Phase 1 cockpit — net I/O, CPU temp, Gitea commit, keyboard shortcuts, CRIT aurora shift +f726b4b fix: rebuild station-b from station.html base, only canvas background differs +70c983f fix: remove binary footer tape from station-b, restore bottom flex row +a30beab fix: revert station to a91e83b baseline, restore layout integrity +790bdd6 fix: service-grid repeat(3) fixed columns, clock weight/color explicit +c2c70b3 fix: restore service-grid auto-fill columns, station-b header backdrop +9a37540 fix: service-grid flex layout and station-b forEach arrow syntax error +b355e23 feat: station full-width binary footer, colored 0, Design B binary curtain aurora +``` + +## 3. 本日のコード変更ボリューム (Git Stats) +```text +74959df fix: service cards fill height, unify cpu labels + posimai-dev/station-b.html | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) +32038e2 fix: services 2-col 3-row, vitals wider 300px, rings larger + posimai-dev/station-b.html | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) +6c3f4b7 fix: load .env at startup, fix vercel created field, services 3-col, vps no binbar + posimai-dev/server.js | 11 ++++++++++- + posimai-dev/station-b.html | 7 +++---- + 2 files changed, 13 insertions(+), 5 deletions(-) +3d1d599 fix: merge machines panel 4-col layout, fix vps-health ok field + posimai-dev/server.js | 2 +- + posimai-dev/station-b.html | 23 ++++++++++++++--------- + 2 files changed, 15 insertions(+), 10 deletions(-) +f5817eb feat: vercel deploy status in ecosystem bar, deploy rule in CLAUDE.md + CLAUDE.md | 9 +++++++++ + posimai-dev/server.js | 22 ++++++++++++++++++++++ + posimai-dev/station-b.html | 21 +++++++++++++++++++++ + 3 files changed, 52 insertions(+) +90ac87d fix: Posimai API check via /api/vps-health proxy, add favicon + posimai-dev/favicon.svg | 4 ++++ + posimai-dev/station-b.html | 3 ++- + posimai-dev/station.html | 3 ++- + 3 files changed, 8 insertions(+), 2 deletions(-) +759915e feat: add deploy-dev.sh — scp + restart bypasses Syncthing lag + package.json | 9 +++++++++ + scripts/deploy-dev.sh | 54 +++++++++++++++++++++++++++++++++++++++++++++++++++ + 2 files changed, 63 insertions(+) +f2ef81f fix: proxy VPS health via /api/vps-health to avoid browser cert errors + posimai-dev/server.js | 15 +++++++++++++++ + posimai-dev/station-b.html | 2 +- + 2 files changed, 16 insertions(+), 1 deletion(-) +5cbf66d feat: add VPS panel (5-column layout), real-time VPS metrics from api.soar-enrich.com + posimai-dev/station-b.html | 55 +++++++++++++++++++++++++++++++++++++++++++--- + 1 file changed, 52 insertions(+), 3 deletions(-) +8d9f4e2 feat: extend /health endpoint with OS metrics for Station cockpit + server.js | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++-------- + 1 file changed, 52 insertions(+), 8 deletions(-) +465c943 feat: Phase 1 cockpit — net I/O, CPU temp, Gitea commit, keyboard shortcuts, CRIT aurora shift + posimai-dev/server.js | 65 +++++++++++++++++++++++++++++ + posimai-dev/station-b.html | 101 +++++++++++++++++++++++++++++++++++++++++---- + posimai-dev/station.html | 58 +++++++++++++++++++++++++- + 3 files changed, 214 insertions(+), 10 deletions(-) +f726b4b fix: rebuild station-b from station.html base, only canvas background differs + posimai-dev/station-b.html | 330 ++++++++++++++++++++------------------------- + 1 file changed, 147 insertions(+), 183 deletions(-) +70c983f fix: remove binary footer tape from station-b, restore bottom flex row + posimai-dev/station-b.html | 42 ++++++++---------------------------------- + 1 file changed, 8 insertions(+), 34 deletions(-) +a30beab fix: revert station to a91e83b baseline, restore layout integrity + posimai-dev/station-b.html | 4 ++-- + posimai-dev/station.html | 49 ++++++++++------------------------------------ + 2 files changed, 12 insertions(+), 41 deletions(-) +790bdd6 fix: service-grid repeat(3) fixed columns, clock weight/color explicit + posimai-dev/station-b.html | 2 +- + posimai-dev/station.html | 4 ++-- + 2 files changed, 3 insertions(+), 3 deletions(-) +c2c70b3 fix: restore service-grid auto-fill columns, station-b header backdrop + posimai-dev/station-b.html | 4 ++-- + posimai-dev/station.html | 2 +- + 2 files changed, 3 insertions(+), 3 deletions(-) +9a37540 fix: service-grid flex layout and station-b forEach arrow syntax error + posimai-dev/station-b.html | 2 +- + posimai-dev/station.html | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) +b355e23 feat: station full-width binary footer, colored 0, Design B binary curtain aurora + posimai-dev/server.js | 2 + + posimai-dev/station-b.html | 744 +++++++++++++++++++++++++++++++++++++++++++++ + posimai-dev/station.html | 46 ++- + 3 files changed, 784 insertions(+), 8 deletions(-) +``` + +## 執筆指示 +- ターゲット: DXに挫折した非エンジニア、AI開発に興味のある人 +- トーン&マナー: 「Architect without Code」。理知的でありながら、非エンジニアゆえの泥臭い苦労も隠さない。 +- フォーマット: Zenn等に投稿可能なMarkdown形式。 +- 期待する構成案: + 1. 本日のテーマ・直面した課題 + 2. 葛藤と試行錯誤(AIにどう指示し、どこで詰まったか) + 3. 到達した解決策(Neo-Minimalism的アプローチ) + 4. アーキテクトとしての所感 + +出力はMarkdownのみとしてください。 diff --git a/tools/posimai-scribe/logs/events.jsonl b/tools/posimai-scribe/logs/events.jsonl new file mode 100644 index 00000000..cb12dd5c --- /dev/null +++ b/tools/posimai-scribe/logs/events.jsonl @@ -0,0 +1,3375 @@ +{"ts":"2026-04-02T15:16:33.636Z","tool":"Edit","target":"event-collector.js","ok":true} +{"ts":"2026-04-02T15:46:29.797Z","tool":"Bash","target":"node -e \"const s = JSON.parse(require('fs').readFileSync('C:/Users/maita/.claude","ok":true} +{"ts":"2026-04-02T15:46:36.263Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/tools/posimai-scribe && npm install","ok":true} +{"ts":"2026-04-02T15:49:56.058Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/ | grep posimai","ok":true} +{"ts":"2026-04-02T15:52:10.327Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/_template-minimal/","ok":true} +{"ts":"2026-04-02T15:54:38.575Z","tool":"Write","target":"index.html","ok":true} +{"ts":"2026-04-02T15:54:57.838Z","tool":"Write","target":"manifest.json","ok":true} +{"ts":"2026-04-02T15:55:08.735Z","tool":"Write","target":"sw.js","ok":true} +{"ts":"2026-04-02T15:55:14.208Z","tool":"Write","target":"package.json","ok":true} +{"ts":"2026-04-02T15:55:19.470Z","tool":"Write","target":"index.json","ok":true} +{"ts":"2026-04-02T15:55:31.258Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-log && git init -b main && git add . &","ok":true} +{"ts":"2026-04-02T15:55:36.897Z","tool":"Bash","target":"GITEA_PASS=$(git credential fill <<< $'protocol=http\\nhost=100.76.7.3:3000' | gr","ok":true} +{"ts":"2026-04-02T15:55:42.729Z","tool":"Bash","target":"gh repo create posimai/posimai-log --private --description \"Architect without Co","ok":true} +{"ts":"2026-04-02T15:55:51.717Z","tool":"Bash","target":"git remote add gitea http://100.76.7.3:3000/mai/posimai-log.git && git remote ad","ok":true} +{"ts":"2026-04-02T15:55:59.635Z","tool":"Bash","target":"echo \"https://github.com/posimai/posimai-log.git\" | vercel git connect --yes 2>&","ok":true} +{"ts":"2026-04-02T15:56:08.326Z","tool":"Bash","target":"git commit --allow-empty -m \"ci: trigger initial Vercel deployment\" && npm run d","ok":true} +{"ts":"2026-04-02T15:56:17.582Z","tool":"Edit","target":"station-b.html","ok":true} +{"ts":"2026-04-02T15:56:19.357Z","tool":"Bash","target":"grep -n \"posimai-journal\\|posimai-timer\\|posimai-diff\" /c/Users/maita/posimai-pr","ok":true} +{"ts":"2026-04-02T15:56:20.015Z","tool":"Bash","target":"grep -n \"posimai-journal\\|posimai-timer\\|\\\"tools\\\"\" /c/Users/maita/posimai-proje","ok":true} +{"ts":"2026-04-02T15:56:25.694Z","tool":"Edit","target":"station-b.html","ok":true} +{"ts":"2026-04-02T15:56:34.313Z","tool":"Bash","target":"grep -n \"posimai-journal\\|posimai-site\\|launch\" /c/Users/maita/posimai-project/p","ok":true} +{"ts":"2026-04-02T15:56:35.079Z","tool":"Bash","target":"grep -n \"posimai-journal\\|posimai-log\\|\\\"create\\\"\\|\\\"log\\\"\" /c/Users/maita/posim","ok":true} +{"ts":"2026-04-02T15:56:40.092Z","tool":"Bash","target":"grep -n \"posimai-journal\\|posimai-log\\|access\\|APPS\" /c/Users/maita/posimai-proj","ok":true} +{"ts":"2026-04-02T15:56:46.145Z","tool":"Bash","target":"grep -n \"posimai-log\\|roadmap.json\" /c/Users/maita/posimai-project/posimai-roadm","ok":true} +{"ts":"2026-04-02T15:56:59.182Z","tool":"Bash","target":"grep -n \"2026-04\\|2026-03-3\" /c/Users/maita/posimai-project/posimai-dashboard/sr","ok":true} +{"ts":"2026-04-02T15:56:59.285Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git add posimai-dev/station-b.html && git c","ok":true} +{"ts":"2026-04-02T15:57:33.144Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-02T15:57:42.696Z","tool":"Edit","target":"projects.json","ok":true} +{"ts":"2026-04-02T15:57:48.003Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-02T15:57:54.316Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-02T15:58:02.317Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-02T15:58:07.116Z","tool":"Bash","target":"tail -8 /c/Users/maita/posimai-project/posimai-roadmap/roadmap.json","ok":true} +{"ts":"2026-04-02T15:58:17.636Z","tool":"Edit","target":"roadmap.json","ok":true} +{"ts":"2026-04-02T15:58:31.983Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-dashboard && git add src/app/timeline/","ok":true} +{"ts":"2026-04-02T15:58:40.639Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-roadmap && git add roadmap.json && git","ok":true} +{"ts":"2026-04-02T16:01:02.109Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/tools/posimai-scribe/ && ls /c/Users/maita/pos","ok":true} +{"ts":"2026-04-02T16:01:08.501Z","tool":"Write","target":".env","ok":true} +{"ts":"2026-04-02T16:01:45.522Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/tools/posimai-scribe/.gitignore 2>/dev/null |","ok":true} +{"ts":"2026-04-02T16:01:49.686Z","tool":"Write","target":".gitignore","ok":true} +{"ts":"2026-04-02T16:02:17.777Z","tool":"Edit","target":".env","ok":true} +{"ts":"2026-04-02T16:02:34.251Z","tool":"Edit","target":".env","ok":true} +{"ts":"2026-04-02T16:03:08.542Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/tools/posimai-scribe && npm install @google/ge","ok":true} +{"ts":"2026-04-02T16:03:20.033Z","tool":"Bash","target":"KEY=$(grep GEMINI_API_KEY /c/Users/maita/posimai-project/tools/posimai-scribe/.e","ok":true} +{"ts":"2026-04-02T16:03:25.478Z","tool":"Edit","target":".env","ok":true} +{"ts":"2026-04-02T16:04:05.044Z","tool":"Bash","target":"npm run generate","ok":true} +{"ts":"2026-04-02T16:04:40.696Z","tool":"Edit","target":"project_architecture_decisions.md","ok":true} +{"ts":"2026-04-02T16:05:29.774Z","tool":"Write","target":"feedback_gemini_model.md","ok":true} +{"ts":"2026-04-02T16:05:49.910Z","tool":"Edit","target":"MEMORY.md","ok":true} +{"ts":"2026-04-02T16:05:56.899Z","tool":"Bash","target":"cp /c/Users/maita/posimai-project/tools/posimai-scribe/drafts/2026-04-02.md /c/U","ok":true} +{"ts":"2026-04-02T16:06:01.892Z","tool":"Write","target":"index.json","ok":true} +{"ts":"2026-04-02T16:06:12.377Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-log && git add posts/ && git commit -m","ok":true} +{"ts":"2026-04-02T16:08:33.559Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-02T16:08:44.567Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-log && git add index.html && git commi","ok":true} +{"ts":"2026-04-02T23:04:09.494Z","tool":"Bash","target":"ls \"C:/Users/maita/posimai-project/scripts/\" && echo \"===\" && ls \"C:/Users/maita","ok":true} +{"ts":"2026-04-02T23:04:10.360Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && git status --short | grep \"sync-conflict\"","ok":true} +{"ts":"2026-04-02T23:04:18.459Z","tool":"Bash","target":"schtasks /query /fo LIST 2>/dev/null | grep -i \"syncthing\\|posimai\" -A 5 | head ","ok":true} +{"ts":"2026-04-02T23:04:18.746Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && git status --short | grep \"sync-conflict\"","ok":true} +{"ts":"2026-04-02T23:04:29.805Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -type f -name \"*.js\" -o -name \"*.json\" -o -n","ok":true} +{"ts":"2026-04-02T23:04:31.772Z","tool":"Bash","target":"ls -la /c/Users/maita/posimai-project/ | head -30","ok":true} +{"ts":"2026-04-02T23:04:52.108Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -maxdepth 2 -name \".env*\" -type f 2>/dev/nul","ok":true} +{"ts":"2026-04-02T23:04:54.886Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -maxdepth 3 -name \"*.sh\" -type f 2>/dev/null","ok":true} +{"ts":"2026-04-02T23:04:59.643Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -maxdepth 3 -name \"package.json\" -type f 2>/","ok":true} +{"ts":"2026-04-02T23:05:16.661Z","tool":"Bash","target":"grep -n \"app\\.\\(get\\|post\\|patch\\|delete\\|put\\)\" /c/Users/maita/posimai-project/","ok":true} +{"ts":"2026-04-02T23:05:22.510Z","tool":"Bash","target":"grep -n \"console.warn\\|console.error\\|WARNING\" /c/Users/maita/posimai-project/po","ok":true} +{"ts":"2026-04-02T23:05:33.099Z","tool":"Bash","target":"git log --all --full-history -- \"posimai-dev/.env\" 2>&1 | head -20","ok":true} +{"ts":"2026-04-02T23:05:35.066Z","tool":"Bash","target":"git ls-files | grep \"\\.env\"","ok":true} +{"ts":"2026-04-02T23:05:42.036Z","tool":"Bash","target":"grep -n \"res.send.*\\${.*message\\|res.send.*\\${.*error\" /c/Users/maita/posimai-pr","ok":true} +{"ts":"2026-04-02T23:05:59.773Z","tool":"Bash","target":"grep -r \"postinstall\\|install\\\":\" /c/Users/maita/posimai-project/*/package.json ","ok":true} +{"ts":"2026-04-02T23:06:02.077Z","tool":"Bash","target":"grep -r \"mongodb\\|mongoose\\|0\\.0\\.0\\.0\\|:27017\\|:5432\\|:3306\" /c/Users/maita/pos","ok":true} +{"ts":"2026-04-02T23:06:04.450Z","tool":"Bash","target":"grep -n \"listen\\|0\\.0\\.0\\.0\" /c/Users/maita/posimai-project/ponshu_room_lite/too","ok":true} +{"ts":"2026-04-02T23:09:33.669Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && git log --all --oneline -- \"**/.env\" \"*.e","ok":true} +{"ts":"2026-04-02T23:09:34.798Z","tool":"Bash","target":"cat \"C:/Users/maita/posimai-project/.gitignore\" 2>/dev/null","ok":true} +{"ts":"2026-04-02T23:09:47.530Z","tool":"Bash","target":"find \"C:/Users/maita/posimai-project\" -name \".env\" -not -path \"*/node_modules/*\"","ok":true} +{"ts":"2026-04-02T23:09:57.791Z","tool":"Bash","target":"grep -n \"sync-conflict\" \"C:/Users/maita/posimai-project/.gitignore\" || echo \"NOT","ok":true} +{"ts":"2026-04-02T23:10:24.753Z","tool":"Edit","target":".gitignore","ok":true} +{"ts":"2026-04-02T23:10:39.657Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && for f in $(git status --short | grep \"syn","ok":true} +{"ts":"2026-04-02T23:10:44.879Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && git status --short | grep \"sync-conflict\"","ok":true} +{"ts":"2026-04-02T23:10:47.297Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && git status --short | grep \"sync-conflict\"","ok":true} +{"ts":"2026-04-02T23:10:49.654Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && git status --short","ok":true} +{"ts":"2026-04-02T23:11:07.735Z","tool":"Bash","target":"find \"C:/Users/maita/posimai-project\" -name \"*.sync-conflict-*\" -not -path \"*/no","ok":true} +{"ts":"2026-04-02T23:11:29.098Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && find . -name \"*.sync-conflict-*\" -not -pa","ok":true} +{"ts":"2026-04-02T23:11:32.257Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && find .git -name \"*.sync-conflict-*\" | xar","ok":true} +{"ts":"2026-04-02T23:11:35.652Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && git fsck --full 2>&1 | head -20","ok":true} +{"ts":"2026-04-02T23:11:58.346Z","tool":"Bash","target":"grep -n \"meta\\.\\|e\\.message\\|res\\.status(500\\|res\\.send\\|escapeHtml\\|sanitize\" \"","ok":true} +{"ts":"2026-04-02T23:12:22.285Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-02T23:12:25.945Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-02T23:12:30.086Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-02T23:13:35.124Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-02T23:13:59.325Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-02T23:14:08.664Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-02T23:14:32.608Z","tool":"Bash","target":"find \"C:/Users/maita/posimai-project\" -name \".stignore\" 2>/dev/null","ok":true} +{"ts":"2026-04-02T23:14:40.606Z","tool":"Write","target":".stignore","ok":true} +{"ts":"2026-04-02T23:14:50.629Z","tool":"Bash","target":"cat \"C:/Users/maita/posimai-project/posimai-dev/.env\" | sed 's/=.*/=***REDACTED*","ok":true} +{"ts":"2026-04-02T23:14:51.636Z","tool":"Bash","target":"cat \"C:/Users/maita/posimai-project/ponshu_room_lite/.env\" | sed 's/=.*/=***REDA","ok":true} +{"ts":"2026-04-02T23:15:02.023Z","tool":"Bash","target":"grep -n \"API_KEY\\|api_key\\|AIzaSy\\|sk-\\|token\" \"C:/Users/maita/posimai-project/p","ok":true} +{"ts":"2026-04-02T23:15:02.696Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && git log --oneline -- \"ponshu_room_lite/bu","ok":true} +{"ts":"2026-04-02T23:15:18.754Z","tool":"Edit","target":"build_4_apks.sh","ok":true} +{"ts":"2026-04-02T23:15:28.744Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && git diff --stat","ok":true} +{"ts":"2026-04-02T23:15:33.080Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && git status --short | grep -v \"^??\"","ok":true} +{"ts":"2026-04-02T23:15:36.137Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && git status --short | grep \".stignore\"","ok":true} +{"ts":"2026-04-02T23:15:45.577Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && git add .gitignore posimai-dev/server.js ","ok":true} +{"ts":"2026-04-02T23:15:54.032Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && npm run deploy 2>&1","ok":true} +{"ts":"2026-04-02T23:16:14.879Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && bash deploy-server.sh 2>&1","ok":true} +{"ts":"2026-04-02T23:16:47.172Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && npm run deploy:dev 2>&1","ok":true} +{"ts":"2026-04-03T00:43:16.724Z","tool":"Write","target":"diary-server.js","ok":true} +{"ts":"2026-04-03T00:43:23.128Z","tool":"Edit","target":"package.json","ok":true} +{"ts":"2026-04-03T00:43:34.297Z","tool":"Write","target":"start-diary-server.vbs","ok":true} +{"ts":"2026-04-03T00:43:43.075Z","tool":"Bash","target":"powershell -Command \"\n\\$startup = \\\"\\$env:APPDATA\\Microsoft\\Windows\\Start Menu\\P","ok":true} +{"ts":"2026-04-03T00:45:59.327Z","tool":"Bash","target":"powershell -Command \"Remove-Item -Path \\\"$env:APPDATA\\Microsoft\\Windows\\Start Me","ok":true} +{"ts":"2026-04-03T00:46:54.530Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-03T00:47:02.053Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-03T00:47:09.860Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-03T00:47:29.136Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-03T00:47:39.991Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-log && git add index.html && git commi","ok":true} +{"ts":"2026-04-03T00:56:20.038Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/scripts -type f 2>/dev/null | head -50","ok":true} +{"ts":"2026-04-03T00:56:39.603Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -type f \\( -name \"*.bat\" -o -name \"*.ps1\" -o","ok":true} +{"ts":"2026-04-03T00:58:20.594Z","tool":"Bash","target":"grep -r \"schtasks\\|Register-ScheduledTask\" /c/Users/maita/posimai-project 2>/dev","ok":true} +{"ts":"2026-04-03T00:58:39.532Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -path \"*/node_modules\" -prune -o -type f \\( ","ok":true} +{"ts":"2026-04-03T00:58:45.721Z","tool":"Bash","target":"grep -r \"schtasks\\|Register-ScheduledTask\\|Task Scheduler\\|/c/tmp\\|/c/Windows\" /","ok":true} +{"ts":"2026-04-03T00:58:53.133Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -path \"*/node_modules\" -prune -o -type f -na","ok":true} +{"ts":"2026-04-03T00:58:57.769Z","tool":"Bash","target":"cat /c/Users/maita/AppData/Local/Temp/claude/c--Users-maita-posimai-project/71f8","ok":true} +{"ts":"2026-04-03T00:58:59.306Z","tool":"Bash","target":"ls -la /c/Users/maita/AppData/Roaming/Microsoft/Windows/Start\\ Menu/Programs/Sta","ok":true} +{"ts":"2026-04-03T00:59:01.284Z","tool":"Bash","target":"file /c/Users/maita/AppData/Roaming/Microsoft/Windows/Start\\ Menu/Programs/Start","ok":true} +{"ts":"2026-04-03T00:59:03.577Z","tool":"Bash","target":"powershell -Command \"Get-ChildItem -Path 'C:\\\\Users\\\\maita\\\\AppData\\\\Roaming\\\\Mi","ok":true} +{"ts":"2026-04-03T00:59:34.649Z","tool":"Bash","target":"ls \"$APPDATA/Microsoft/Windows/Start Menu/Programs/Startup/\" 2>/dev/null","ok":true} +{"ts":"2026-04-03T00:59:38.565Z","tool":"Bash","target":"rm \"$APPDATA/Microsoft/Windows/Start Menu/Programs/Startup/posimai-scribe-diary.","ok":true} +{"ts":"2026-04-03T02:27:13.935Z","tool":"Edit","target":"memory-push.sh","ok":true} +{"ts":"2026-04-03T02:42:16.716Z","tool":"Edit","target":"settings.json","ok":true} +{"ts":"2026-04-03T02:43:23.229Z","tool":"Bash","target":"ls \"C:/Users/maita/posimai-project/tools/posimai-scribe/logs/\" 2>/dev/null && ec","ok":true} +{"ts":"2026-04-03T02:43:23.641Z","tool":"Bash","target":"node --version 2>/dev/null; python3 --version 2>/dev/null; bash --version 2>/dev","ok":true} +{"ts":"2026-04-03T02:43:26.640Z","tool":"Bash","target":"tail -5 \"C:/Users/maita/posimai-project/tools/posimai-scribe/logs/events.jsonl\" ","ok":true} +{"ts":"2026-04-03T02:43:28.194Z","tool":"Bash","target":"cd \"C:/Users/maita/.claude/projects/c--Users-maita-posimai-project/memory\" && gi","ok":true} +{"ts":"2026-04-03T02:43:28.897Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && git remote -v 2>/dev/null","ok":true} +{"ts":"2026-04-03T02:43:31.397Z","tool":"Bash","target":"ls \"C:/Users/maita/posimai-project/tools/posimai-scribe/logs/\"","ok":true} +{"ts":"2026-04-03T02:43:32.409Z","tool":"Bash","target":"wc -l \"C:/Users/maita/posimai-project/tools/posimai-scribe/logs/events.jsonl\" 2>","ok":true} +{"ts":"2026-04-03T02:43:35.476Z","tool":"Bash","target":"# event-collector.js の logs ディレクトリが存在しない場合のフェイルセーフ確認\n# もし logs/ が存在しなければ appendF","ok":true} +{"ts":"2026-04-03T03:43:15.270Z","tool":"Bash","target":"ls \"C:/Users/maita/posimai-project/tools/posimai-scribe/src/event-collector.js\" ","ok":true} +{"ts":"2026-04-03T03:43:15.277Z","tool":"Bash","target":"ls \"C:/Users/maita/posimai-project/scripts/memory-push.sh\" 2>/dev/null && echo \"","ok":true} +{"ts":"2026-04-03T03:43:19.172Z","tool":"Bash","target":"grep -n \"fetch\\|http\\|request\\|network\\|socket\\|xmlhttp\\|axios\" \"C:/Users/maita/","ok":true} +{"ts":"2026-04-03T03:43:19.471Z","tool":"Bash","target":"wc -l \"C:/Users/maita/posimai-project/tools/posimai-scribe/src/event-collector.j","ok":true} +{"ts":"2026-04-03T04:05:39.353Z","tool":"Edit","target":"settings.json","ok":true} +{"ts":"2026-04-03T04:05:40.311Z","tool":"Edit","target":"memory-push.sh","ok":true} +{"ts":"2026-04-03T04:14:09.047Z","tool":"Bash","target":"ls \"C:/Users/maita/posimai-project/tools/posimai-scribe/scripts/\"","ok":true} +{"ts":"2026-04-03T04:14:12.483Z","tool":"Bash","target":"grep -n \"offline\\|status-dot\\|diary-status\\|checkServer\\|server\\|START_CMD\" \"C:/","ok":true} +{"ts":"2026-04-03T04:14:15.011Z","tool":"Bash","target":"sed -n '415,430p' \"C:/Users/maita/posimai-project/posimai-log/index.html\"","ok":true} +{"ts":"2026-04-03T04:14:15.508Z","tool":"Bash","target":"sed -n '530,630p' \"C:/Users/maita/posimai-project/posimai-log/index.html\"","ok":true} +{"ts":"2026-04-03T04:14:30.305Z","tool":"Bash","target":"sed -n '260,295p' \"C:/Users/maita/posimai-project/posimai-log/index.html\"","ok":true} +{"ts":"2026-04-03T04:14:31.009Z","tool":"Bash","target":"sed -n '415,465p' \"C:/Users/maita/posimai-project/posimai-log/index.html\"","ok":true} +{"ts":"2026-04-03T04:14:54.306Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-03T04:15:01.054Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-03T04:15:09.287Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-03T04:15:17.034Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-03T04:15:21.443Z","tool":"Write","target":"start-diary-server.bat","ok":true} +{"ts":"2026-04-03T04:15:24.663Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project/posimai-log\" && git add index.html && git dif","ok":true} +{"ts":"2026-04-03T04:15:27.302Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && git add posimai-log/index.html tools/posi","ok":true} +{"ts":"2026-04-03T04:15:34.383Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && npm run deploy 2>&1 | tail -5","ok":true} +{"ts":"2026-04-03T04:21:34.422Z","tool":"Bash","target":"grep -rn \"localStorage\" \"C:/Users/maita/posimai-project\" --include=\"*.html\" --in","ok":true} +{"ts":"2026-04-03T04:22:25.914Z","tool":"Bash","target":"grep -rn \"localStorage.setItem\" \"C:/Users/maita/posimai-project\" --include=\"*.ht","ok":true} +{"ts":"2026-04-03T04:22:44.681Z","tool":"Bash","target":"grep -n \"STORAGE_KEY\\|setItem(STORAGE\" \"C:/Users/maita/posimai-project/posimai-a","ok":true} +{"ts":"2026-04-03T04:22:46.416Z","tool":"Bash","target":"echo \"---JOURNAL DRAFT---\"\ngrep -n \"DRAFT_KEY\\s*=\\|api\\.soar-enrich\\|fetch(\" \"C:","ok":true} +{"ts":"2026-04-03T04:22:52.757Z","tool":"Bash","target":"echo \"---THINK app exists?---\"\nls \"C:/Users/maita/posimai-project/posimai-think/","ok":true} +{"ts":"2026-04-03T04:22:57.112Z","tool":"Bash","target":"echo \"---THINK localStorage keys---\"\ngrep -n \"localStorage\\|STORAGE_KEY\" \"C:/Use","ok":true} +{"ts":"2026-04-03T04:23:21.097Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-together/supabase/functions/","ok":true} +{"ts":"2026-04-03T04:24:01.317Z","tool":"Edit","target":"index.ts","ok":true} +{"ts":"2026-04-03T04:24:06.864Z","tool":"Edit","target":"index.ts","ok":true} +{"ts":"2026-04-03T04:26:06.670Z","tool":"Bash","target":"cat c:/Users/maita/posimai-project/posimai-together/package.json","ok":true} +{"ts":"2026-04-03T04:26:09.501Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-together/supabase/","ok":true} +{"ts":"2026-04-03T04:26:15.605Z","tool":"Bash","target":"cat ~/.zshrc 2>/dev/null | grep -i supabase; cat ~/.bashrc 2>/dev/null | grep -i","ok":true} +{"ts":"2026-04-03T04:26:27.401Z","tool":"Bash","target":"ls \"C:/Users/maita/.supabase/\" 2>/dev/null || echo \"not found\"","ok":true} +{"ts":"2026-04-03T04:26:33.227Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-together/.github/workflows/ 2>/dev/nul","ok":true} +{"ts":"2026-04-03T04:26:35.671Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-together && supabase projects list 2>&","ok":true} +{"ts":"2026-04-03T04:26:37.933Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/supabase/ 2>/dev/null","ok":true} +{"ts":"2026-04-03T04:26:40.214Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/supabase/functions/ 2>/dev/null","ok":true} +{"ts":"2026-04-03T04:26:43.067Z","tool":"Bash","target":"diff c:/Users/maita/posimai-project/supabase/functions/together-archive/index.ts","ok":true} +{"ts":"2026-04-03T04:27:51.492Z","tool":"Edit","target":"index.ts","ok":true} +{"ts":"2026-04-03T04:28:10.274Z","tool":"Edit","target":"index.ts","ok":true} +{"ts":"2026-04-03T04:28:15.415Z","tool":"Bash","target":"cp \"c:/Users/maita/posimai-project/supabase/functions/together-archive/index.ts\"","ok":true} +{"ts":"2026-04-03T04:28:25.519Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-together && git add supabase/functions","ok":true} +{"ts":"2026-04-03T04:28:28.117Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git add supabase/functions/together-archive","ok":true} +{"ts":"2026-04-03T04:28:30.486Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git status supabase/","ok":true} +{"ts":"2026-04-03T04:28:55.931Z","tool":"Bash","target":"find c:/Users/maita/posimai-project -name \"config.toml\" 2>/dev/null; find c:/Use","ok":true} +{"ts":"2026-04-03T04:28:58.987Z","tool":"Bash","target":"cat c:/Users/maita/posimai-project/posimai-together/supabase/functions/together-","ok":true} +{"ts":"2026-04-03T06:46:04.540Z","tool":"Bash","target":"ls \"C:/Users/maita/posimai-project/\" | grep -i server","ok":true} +{"ts":"2026-04-03T06:46:04.805Z","tool":"Bash","target":"ls \"C:/Users/maita/posimai-project/\" | grep -v \"^$\"","ok":true} +{"ts":"2026-04-03T06:46:15.227Z","tool":"Bash","target":"grep -n \"journal\\|diary\\|site_config\\|router\\|app\\.\\(get\\|post\\|use\\)\" \"C:/Users","ok":true} +{"ts":"2026-04-03T06:46:22.234Z","tool":"Bash","target":"grep -n \"authMiddleware\\|auth_token\\|API_KEY\\|x-api-key\\|authorization\" \"C:/User","ok":true} +{"ts":"2026-04-03T06:46:23.262Z","tool":"Bash","target":"grep -n \"site_config\\|diary\" \"C:/Users/maita/posimai-project/server.js\" | grep -","ok":true} +{"ts":"2026-04-03T06:46:26.962Z","tool":"Bash","target":"sed -n '135,160p' \"C:/Users/maita/posimai-project/server.js\"","ok":true} +{"ts":"2026-04-03T06:46:27.290Z","tool":"Bash","target":"sed -n '1360,1395p' \"C:/Users/maita/posimai-project/server.js\"","ok":true} +{"ts":"2026-04-03T06:46:56.147Z","tool":"Bash","target":"grep -n \"diary\\|2626\\|localhost\" \"C:/Users/maita/posimai-project/tools/posimai-s","ok":true} +{"ts":"2026-04-03T06:47:07.983Z","tool":"Bash","target":"cat \"C:/Users/maita/posimai-project/tools/posimai-scribe/.env\" 2>/dev/null || ec","ok":true} +{"ts":"2026-04-03T06:49:16.335Z","tool":"Bash","target":"grep -n \"diary-reconnect-btn\\|diary-footer\\|diary-sync-status\" \"C:/Users/maita/p","ok":true} +{"ts":"2026-04-03T06:49:20.743Z","tool":"Bash","target":"sed -n '296,330p' \"C:/Users/maita/posimai-project/posimai-log/index.html\"","ok":true} +{"ts":"2026-04-03T06:49:33.862Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-03T06:49:37.127Z","tool":"Bash","target":"cat /c/Users/maita/.config/supabase/access-token 2>/dev/null; ls \"/c/Users/maita","ok":true} +{"ts":"2026-04-03T06:49:39.136Z","tool":"Bash","target":"sed -n '448,470p' \"C:/Users/maita/posimai-project/posimai-log/index.html\"","ok":true} +{"ts":"2026-04-03T06:49:41.354Z","tool":"Bash","target":"cat C:/Users/maita/AppData/Local/Temp/claude/c--Users-maita-posimai-project/9544","ok":true} +{"ts":"2026-04-03T06:49:47.549Z","tool":"Bash","target":"sed -n '470,495p' \"C:/Users/maita/posimai-project/posimai-log/index.html\"","ok":true} +{"ts":"2026-04-03T06:50:02.257Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-03T06:50:03.780Z","tool":"Bash","target":"find \"C:/Users/maita\" -name \"access-token\" 2>/dev/null | head -5; find \"C:/Users","ok":true} +{"ts":"2026-04-03T06:50:12.091Z","tool":"Bash","target":"grep -n \"DIARY_LS_KEY\\|DIARY_URL\\|DIARY_START_CMD\\|serverOnline\\|checkServer\\|op","ok":true} +{"ts":"2026-04-03T06:50:17.640Z","tool":"Bash","target":"sed -n '580,700p' \"C:/Users/maita/posimai-project/posimai-log/index.html\"","ok":true} +{"ts":"2026-04-03T06:50:22.245Z","tool":"Bash","target":"sed -n '700,720p' \"C:/Users/maita/posimai-project/posimai-log/index.html\"","ok":true} +{"ts":"2026-04-03T06:51:00.890Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-03T06:51:10.013Z","tool":"Edit","target":"generate-post.js","ok":true} +{"ts":"2026-04-03T06:51:19.820Z","tool":"Edit","target":"generate-post.js","ok":true} +{"ts":"2026-04-03T06:51:27.735Z","tool":"Edit","target":"generate-post.js","ok":true} +{"ts":"2026-04-03T06:51:36.232Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && git add posimai-log/index.html tools/posi","ok":true} +{"ts":"2026-04-03T06:51:44.970Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && git status --short","ok":true} +{"ts":"2026-04-03T06:51:59.676Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && git ls-files posimai-log/ | head -10","ok":true} +{"ts":"2026-04-03T06:52:04.123Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && cat .gitignore 2>/dev/null | head -30","ok":true} +{"ts":"2026-04-03T06:52:18.765Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && git ls-files tools/ scripts/ | head -20","ok":true} +{"ts":"2026-04-03T06:52:29.545Z","tool":"Bash","target":"ls \"C:/Users/maita/posimai-project/posimai-log/\" && echo \"---\" && ls \"C:/Users/m","ok":true} +{"ts":"2026-04-03T06:52:29.820Z","tool":"Bash","target":"ls \"C:/Users/maita/posimai-project/tools/posimai-scribe/src/\"","ok":true} +{"ts":"2026-04-03T06:52:35.310Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && git add \\\n posimai-log/index.html \\\n po","ok":true} +{"ts":"2026-04-03T06:52:39.298Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && git status --short posimai-log/","ok":true} +{"ts":"2026-04-03T06:52:43.055Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && git add posimai-log/ && git diff --cached","ok":true} +{"ts":"2026-04-03T06:52:51.661Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && git rm --cached posimai-log 2>/dev/null; ","ok":true} +{"ts":"2026-04-03T06:52:57.516Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project/posimai-log\" && git status --short","ok":true} +{"ts":"2026-04-03T06:53:01.082Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project/posimai-log\" && git diff HEAD --stat","ok":true} +{"ts":"2026-04-03T06:53:04.005Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project/posimai-log\" && cat .gitignore 2>/dev/null ||","ok":true} +{"ts":"2026-04-03T06:53:08.857Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project/posimai-log\" && git add index.html && git com","ok":true} +{"ts":"2026-04-03T06:53:21.572Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project/posimai-log\" && git push gitea main && git pu","ok":true} +{"ts":"2026-04-03T06:53:32.016Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && git commit -m \"feat: diary VPS cloud sync","ok":true} +{"ts":"2026-04-03T06:53:46.710Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project\" && npm run deploy 2>&1 | tail -4","ok":true} +{"ts":"2026-04-03T06:56:41.036Z","tool":"Bash","target":"grep -n \"STORAGE_KEY\\|saveData\\|loadData\\|localStorage\\.\\(setItem\\|getItem\\)\" \"C","ok":true} +{"ts":"2026-04-03T06:56:42.670Z","tool":"Bash","target":"grep -n \"insights\\|mbti\\|charname\\|setItem\\|getItem\" \"C:/Users/maita/posimai-pro","ok":true} +{"ts":"2026-04-03T06:56:43.662Z","tool":"Bash","target":"grep -n \"feed_saved_urls\\|pm_saved\\|events-saved\" \"C:/Users/maita/posimai-projec","ok":true} +{"ts":"2026-04-03T06:56:47.733Z","tool":"Bash","target":"grep -n \"DRAFT_KEY\\|journal-draft\\|setItem.*DRAFT\\|getItem.*DRAFT\" \"C:/Users/mai","ok":true} +{"ts":"2026-04-03T06:56:48.293Z","tool":"Bash","target":"sed -n '1524,1545p' \"C:/Users/maita/posimai-project/posimai-atlas/index.html\"","ok":true} +{"ts":"2026-04-03T06:56:53.080Z","tool":"Bash","target":"grep -n \"api\\.soar-enrich\\|posimai_api_key\\|API_BASE\\|authMiddleware\" \"C:/Users/","ok":true} +{"ts":"2026-04-03T06:57:01.046Z","tool":"Bash","target":"sed -n '2620,2660p' \"C:/Users/maita/posimai-project/posimai-atlas/index.html\"","ok":true} +{"ts":"2026-04-03T06:57:02.012Z","tool":"Bash","target":"sed -n '2910,2930p' \"C:/Users/maita/posimai-project/posimai-atlas/index.html\"","ok":true} +{"ts":"2026-04-03T06:57:05.140Z","tool":"Bash","target":"grep -n \"posimai_api_key\\|posimai-atlas-token\" \"C:/Users/maita/posimai-project/p","ok":true} +{"ts":"2026-04-03T06:57:05.818Z","tool":"Bash","target":"wc -l \"C:/Users/maita/posimai-project/posimai-atlas/index.html\"","ok":true} +{"ts":"2026-04-03T06:57:11.894Z","tool":"Bash","target":"grep -n \"ls-files\\|git remote\\|.git\" \"C:/Users/maita/posimai-project/posimai-atl","ok":true} +{"ts":"2026-04-03T06:57:13.503Z","tool":"Bash","target":"for app in posimai-think posimai-feed posimai-events posimai-journal; do\n cd \"C","ok":true} +{"ts":"2026-04-03T06:57:33.568Z","tool":"Bash","target":"cat \"C:/Users/maita/AppData/Roaming/supabase/access-token\" 2>/dev/null || cat \"C","ok":true} +{"ts":"2026-04-03T06:57:37.742Z","tool":"Bash","target":"ls \"C:/Users/maita/AppData/Roaming/\" 2>/dev/null | grep -i supa","ok":true} +{"ts":"2026-04-03T06:57:41.126Z","tool":"Bash","target":"supabase --debug 2>&1 | head -5","ok":true} +{"ts":"2026-04-03T06:57:45.487Z","tool":"Bash","target":"supabase status 2>&1 | head -3","ok":true} +{"ts":"2026-04-03T06:57:47.247Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-03T06:57:50.002Z","tool":"Bash","target":"supabase projects list --debug 2>&1 | grep -i \"config\\|token\\|path\" | head -10","ok":true} +{"ts":"2026-04-03T06:58:06.426Z","tool":"Bash","target":"grep -n \"insights\\|mbti\\|charname\\|saveSettings\\|saveInsight\\|deleteInsight\\|APP","ok":true} +{"ts":"2026-04-03T06:58:31.698Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-03T06:58:45.302Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-03T06:58:56.772Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-03T06:59:06.551Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-03T06:59:18.462Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-03T07:00:02.054Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-03T07:00:10.736Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-03T07:00:29.019Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project/posimai-atlas\" && git add index.html && git c","ok":true} +{"ts":"2026-04-03T07:00:38.027Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project/posimai-think\" && git add index.html && git c","ok":true} +{"ts":"2026-04-03T07:00:48.276Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project/posimai-events\" && git add index.html && git ","ok":true} +{"ts":"2026-04-03T07:02:50.424Z","tool":"Bash","target":"grep -rn \"station\\|Station\\|3333\\|ubuntu-pc\\|tail72\\|100\\.\" \"C:/Users/maita/posi","ok":true} +{"ts":"2026-04-03T07:03:16.003Z","tool":"Bash","target":"grep -n \"https\\|ssl\\|cert\\|key\\|tls\\|443\\|3333\" \"C:/Users/maita/posimai-project/","ok":true} +{"ts":"2026-04-03T07:03:16.744Z","tool":"Bash","target":"grep -n \"https\\|ssl\\|cert\\|tls\\|createServer\\|3333\" \"C:/Users/maita/posimai-proj","ok":true} +{"ts":"2026-04-03T07:03:22.050Z","tool":"Bash","target":"sed -n '245,275p' \"C:/Users/maita/posimai-project/posimai-dev/server.js\"","ok":true} +{"ts":"2026-04-03T07:03:35.250Z","tool":"Bash","target":"grep -rn \"100\\.77\\.11\\.43\" \"C:/Users/maita/posimai-project/posimai-dashboard/src","ok":true} +{"ts":"2026-04-03T07:03:51.124Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-03T07:03:59.984Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-03T07:04:07.191Z","tool":"Bash","target":"sed -n '280,295p' \"C:/Users/maita/posimai-project/posimai-dashboard/src/app/nas/","ok":true} +{"ts":"2026-04-03T07:04:21.062Z","tool":"Edit","target":"projects.json","ok":true} +{"ts":"2026-04-03T07:04:27.700Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project/posimai-dashboard\" && git add src/app/access/","ok":true} +{"ts":"2026-04-03T07:04:43.550Z","tool":"Bash","target":"cd \"C:/Users/maita/posimai-project/posimai-dashboard\" && git commit -m \"fix: rep","ok":true} +{"ts":"2026-04-03T07:07:11.921Z","tool":"Write","target":"reference_supabase_deploy.md","ok":true} +{"ts":"2026-04-03T07:07:34.032Z","tool":"Edit","target":"MEMORY.md","ok":true} +{"ts":"2026-04-03T07:07:48.027Z","tool":"Bash","target":"cat \"C:\\Users\\maita\\AppData\\Local\\Temp\\claude\\c--Users-maita-posimai-project\\954","ok":true} +{"ts":"2026-04-03T07:16:26.816Z","tool":"Bash","target":"cat \"C:\\Users\\maita\\AppData\\Local\\Temp\\claude\\c--Users-maita-posimai-project\\954","ok":true} +{"ts":"2026-04-03T07:20:30.819Z","tool":"Bash","target":"ls \"C:/Users/maita/posimai-project/posimai-log/\" && echo \"---logo?---\" && ls \"C:","ok":true} +{"ts":"2026-04-03T07:22:50.216Z","tool":"Bash","target":"cat \"C:/Users/maita/posimai-project/posimai-log/manifest.json\"\necho \"---\"\nfile \"","ok":true} +{"ts":"2026-04-03T07:23:22.872Z","tool":"Bash","target":"python --version 2>/dev/null || python3 --version 2>/dev/null || node --version","ok":true} +{"ts":"2026-04-03T07:23:47.242Z","tool":"Bash","target":"node -e \"\nconst fs = require('fs');\nconst zlib = require('zlib');\n\nconst W = 512","ok":true} +{"ts":"2026-04-03T07:30:19.315Z","tool":"Bash","target":"cat \"C:\\Users\\maita\\AppData\\Local\\Temp\\claude\\c--Users-maita-posimai-project\\954","ok":true} +{"ts":"2026-04-04T02:01:42.088Z","tool":"Bash","target":"schtasks /query /fo LIST /v /tn \"*syncthing*\" 2>/dev/null || schtasks /query /fo","ok":true} +{"ts":"2026-04-04T02:01:44.193Z","tool":"Bash","target":"schtasks /query /fo LIST /v | grep -i -A 15 \"syncthing\"","ok":true} +{"ts":"2026-04-04T02:01:47.252Z","tool":"Bash","target":"cmd /c \"schtasks /query /fo LIST /v\" 2>&1 | grep -i -A 20 \"syncthing\"","ok":true} +{"ts":"2026-04-04T02:01:52.276Z","tool":"Bash","target":"cmd /c \"dir \\\"%APPDATA%\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\\\"\"","ok":true} +{"ts":"2026-04-04T02:01:54.620Z","tool":"Bash","target":"ls \"/c/Users/maita/AppData/Roaming/Microsoft/Windows/Start Menu/Programs/Startup","ok":true} +{"ts":"2026-04-04T02:02:07.660Z","tool":"Bash","target":"ls \"/c/Users/maita/AppData/Local/Microsoft/WinGet/Packages/\" | grep -i syncthing","ok":true} +{"ts":"2026-04-04T02:02:10.488Z","tool":"Bash","target":"ls \"/c/Users/maita/AppData/Local/Microsoft/WinGet/Packages/Syncthing.Syncthing_M","ok":true} +{"ts":"2026-04-04T02:02:12.924Z","tool":"Bash","target":"ls \"/c/Users/maita/AppData/Local/Microsoft/WinGet/Packages/Syncthing.Syncthing_M","ok":true} +{"ts":"2026-04-04T02:02:18.294Z","tool":"Write","target":"start-syncthing.vbs","ok":true} +{"ts":"2026-04-04T03:21:26.422Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-store/","ok":true} +{"ts":"2026-04-04T05:05:31.718Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -type f -name \"*.json\" | head -20","ok":true} +{"ts":"2026-04-04T05:05:33.743Z","tool":"Bash","target":"ls -la /c/Users/maita/posimai-project","ok":true} +{"ts":"2026-04-04T05:05:35.667Z","tool":"Bash","target":"ls -la /c/Users/maita/posimai-project/posimai-together","ok":true} +{"ts":"2026-04-04T05:05:39.256Z","tool":"Bash","target":"grep -n \"Gemini\\|summarize\\|charset\\|encoding\" /c/Users/maita/posimai-project/po","ok":true} +{"ts":"2026-04-04T05:05:43.063Z","tool":"Bash","target":"grep -n \"fetch\\|Gemini\\|summarize\\|title\\|itmedia\" /c/Users/maita/posimai-projec","ok":true} +{"ts":"2026-04-04T05:05:45.424Z","tool":"Bash","target":"grep -n \"async.*Ai\\|openAiSheet\\|summarize\\|generateSummary\\|genai\\|Gemini\" /c/U","ok":true} +{"ts":"2026-04-04T05:05:49.164Z","tool":"Bash","target":"grep -n \"archive_status\\|summary\\|Gemini\\|genai\" /c/Users/maita/posimai-project/","ok":true} +{"ts":"2026-04-04T05:05:56.634Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-together && git log --oneline -20","ok":true} +{"ts":"2026-04-04T05:05:58.604Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-together && git show 5d172d6","ok":true} +{"ts":"2026-04-04T05:06:02.971Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-together && git show 4ba7a2b | head -1","ok":true} +{"ts":"2026-04-04T05:06:05.156Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/posimai-together -type f \\( -name \"*.ts\" -o ","ok":true} +{"ts":"2026-04-04T05:06:09.034Z","tool":"Bash","target":"grep -n \"autoSaveShare\\|postShare\\|fetch\\|archive_status\" /c/Users/maita/posimai","ok":true} +{"ts":"2026-04-04T05:06:18.714Z","tool":"Bash","target":"git log --oneline -5 posimai-together/","ok":true} +{"ts":"2026-04-04T05:06:20.317Z","tool":"Bash","target":"git log --oneline -10 -- posimai-together","ok":true} +{"ts":"2026-04-04T05:06:22.184Z","tool":"Bash","target":"git log --oneline -20 | grep -i \"together\\|archive\\|encoding\\|charset\"","ok":true} +{"ts":"2026-04-04T05:06:23.996Z","tool":"Bash","target":"git log --oneline -20","ok":true} +{"ts":"2026-04-04T05:06:26.026Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-together && git log --oneline -20","ok":true} +{"ts":"2026-04-04T05:09:02.874Z","tool":"Edit","target":"index.ts","ok":true} +{"ts":"2026-04-04T05:09:08.056Z","tool":"Edit","target":"index.ts","ok":true} +{"ts":"2026-04-04T05:09:16.396Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-04T05:09:27.279Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-04T05:10:47.977Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/docs/master-architecture.md 2>/dev/null | gre","ok":true} +{"ts":"2026-04-04T05:11:13.729Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-together && git diff --stat && git log","ok":true} +{"ts":"2026-04-04T05:11:20.599Z","tool":"Bash","target":"git add index.html supabase/functions/together-archive/index.ts && git commit -m","ok":true} +{"ts":"2026-04-04T05:11:28.706Z","tool":"Bash","target":"npm run deploy 2>&1","ok":true} +{"ts":"2026-04-04T05:20:52.629Z","tool":"Bash","target":"cmd /c \"tasklist | findstr -i syncthing\"","ok":true} +{"ts":"2026-04-04T05:20:54.877Z","tool":"Bash","target":"cmd /c \"taskkill /F /IM syncthing.exe 2>&1\"","ok":true} +{"ts":"2026-04-04T05:20:57.869Z","tool":"Bash","target":"rm \"/c/Users/maita/AppData/Roaming/Microsoft/Windows/Start Menu/Programs/Startup","ok":true} +{"ts":"2026-04-04T05:20:59.840Z","tool":"Bash","target":"cmd /c \"winget uninstall Syncthing.Syncthing 2>&1\"","ok":true} +{"ts":"2026-04-04T05:21:01.954Z","tool":"Bash","target":"cmd /c \"winget list | findstr -i syncthing\"","ok":true} +{"ts":"2026-04-04T05:21:09.426Z","tool":"Bash","target":"ls \"/c/Users/maita/AppData/Local/Microsoft/WinGet/Packages/\" | grep -i syncthing","ok":true} +{"ts":"2026-04-04T05:21:13.693Z","tool":"Bash","target":"rm -rf \"/c/Users/maita/AppData/Local/Syncthing/\" && echo \"config removed\"\nrm -rf","ok":true} +{"ts":"2026-04-04T05:21:42.438Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/deploy-server.sh 2>/dev/null || echo \"not fou","ok":true} +{"ts":"2026-04-04T05:21:44.987Z","tool":"Bash","target":"ls /c/Users/maita/.supabase/ 2>/dev/null && cat /c/Users/maita/.supabase/* 2>/de","ok":true} +{"ts":"2026-04-04T05:21:47.702Z","tool":"Bash","target":"supabase --help 2>&1 | grep -i \"token\\|login\\|access\" | head -10","ok":true} +{"ts":"2026-04-04T05:21:56.364Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/posimai-together/package.json","ok":true} +{"ts":"2026-04-04T05:21:59.267Z","tool":"Write","target":".supabase-token","ok":true} +{"ts":"2026-04-04T05:22:13.038Z","tool":"Write","target":"deploy-edge.sh","ok":true} +{"ts":"2026-04-04T05:22:22.027Z","tool":"Edit","target":"package.json","ok":true} +{"ts":"2026-04-04T05:22:35.860Z","tool":"Write","target":"reference_supabase_deploy.md","ok":true} +{"ts":"2026-04-04T05:22:51.271Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-together && git add package.json && gi","ok":true} +{"ts":"2026-04-04T05:22:56.098Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project && git add deploy-edge.sh && git commit -m \"$(","ok":true} +{"ts":"2026-04-04T05:23:02.932Z","tool":"Bash","target":"npm run deploy 2>&1","ok":true} +{"ts":"2026-04-04T05:23:13.320Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-dashboard/src/app/","ok":true} +{"ts":"2026-04-04T05:23:16.583Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-dashboard/src/app/login/ && ls c:/User","ok":true} +{"ts":"2026-04-04T05:23:20.972Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-dashboard/src/app/auth/ && cat c:/User","ok":true} +{"ts":"2026-04-04T05:25:15.586Z","tool":"Edit","target":"deploy-edge.sh","ok":true} +{"ts":"2026-04-04T05:25:21.016Z","tool":"Bash","target":"bash /c/Users/maita/posimai-project/deploy-edge.sh 2>&1","ok":true} +{"ts":"2026-04-04T05:25:32.093Z","tool":"Bash","target":"git add deploy-edge.sh && git commit -m \"$(cat <<'EOF'\nfix: deploy-edge.sh handl","ok":true} +{"ts":"2026-04-04T05:27:21.815Z","tool":"Edit","target":"CLAUDE.md","ok":true} +{"ts":"2026-04-04T05:27:41.392Z","tool":"Edit","target":"AGENTS.md","ok":true} +{"ts":"2026-04-04T05:28:05.417Z","tool":"Edit","target":"AGENTS.md","ok":true} +{"ts":"2026-04-04T05:28:27.806Z","tool":"Bash","target":"git add CLAUDE.md AGENTS.md && git commit -m \"$(cat <<'EOF'\ndocs: add deploy-edg","ok":true} +{"ts":"2026-04-04T05:28:56.465Z","tool":"Bash","target":"ls /c/Users/maita/.claude/projects/c--Users-maita-posimai-project/memory/","ok":true} +{"ts":"2026-04-04T05:29:07.538Z","tool":"Bash","target":"grep -l \"自動\\|自律\\|必ず\\|禁止\\|すること\\|すべき\" /c/Users/maita/.claude/projects/c--Users-mai","ok":true} +{"ts":"2026-04-04T05:29:31.598Z","tool":"Edit","target":"CLAUDE.md","ok":true} +{"ts":"2026-04-04T05:29:35.762Z","tool":"Edit","target":"AGENTS.md","ok":true} +{"ts":"2026-04-04T05:29:46.760Z","tool":"Bash","target":"git add CLAUDE.md AGENTS.md && git commit -m \"$(cat <<'EOF'\ndocs: add Gitea auto","ok":true} +{"ts":"2026-04-04T07:29:13.827Z","tool":"Edit","target":"CLAUDE.md","ok":true} +{"ts":"2026-04-04T07:29:19.797Z","tool":"Edit","target":"AGENTS.md","ok":true} +{"ts":"2026-04-04T07:29:30.715Z","tool":"Bash","target":"cmd /c \"tailscale status 2>&1\"","ok":true} +{"ts":"2026-04-04T07:29:32.012Z","tool":"Bash","target":"git add CLAUDE.md AGENTS.md && git commit -m \"$(cat <<'EOF'\ndocs: add meta-rule ","ok":true} +{"ts":"2026-04-04T07:29:32.730Z","tool":"Bash","target":"cmd /c \"\\\"C:\\Program Files\\Tailscale\\tailscale.exe\\\" status 2>&1\"","ok":true} +{"ts":"2026-04-04T07:32:59.088Z","tool":"Bash","target":"cmd /c \"schtasks /delete /tn \\\"Syncthing\\\" /f 2>&1\"","ok":true} +{"ts":"2026-04-04T07:33:02.233Z","tool":"Bash","target":"cmd /c \"schtasks /query /tn \\\"Syncthing\\\" 2>&1\"","ok":true} +{"ts":"2026-04-04T07:33:08.741Z","tool":"Bash","target":"# スタートアップフォルダ\nls \"/c/Users/maita/AppData/Roaming/Microsoft/Windows/Start Menu/Pr","ok":true} +{"ts":"2026-04-04T07:34:08.814Z","tool":"Bash","target":"cmd /c \"schtasks /delete /tn \\\"\\Syncthing\\\" /f 2>&1\"","ok":true} +{"ts":"2026-04-04T07:34:11.332Z","tool":"Bash","target":"cmd /c \"schtasks /query /fo LIST 2>&1\" | grep -i syncthing","ok":true} +{"ts":"2026-04-04T07:36:12.321Z","tool":"Write","target":"CLAUDE.md","ok":true} +{"ts":"2026-04-04T07:36:30.169Z","tool":"Write","target":"AGENTS.md","ok":true} +{"ts":"2026-04-04T07:36:43.130Z","tool":"Bash","target":"git add CLAUDE.md AGENTS.md && git commit -m \"$(cat <<'EOF'\ndocs: compress CLAUD","ok":true} +{"ts":"2026-04-04T07:44:31.707Z","tool":"Bash","target":"cat ~/.ssh/config 2>/dev/null || echo \"config file not found\"","ok":true} +{"ts":"2026-04-04T07:44:40.557Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/posimai-dev/package.json | grep -A3 \"deploy\"","ok":true} +{"ts":"2026-04-04T07:44:43.791Z","tool":"Bash","target":"grep -r \"deploy\" /c/Users/maita/posimai-project/posimai-dev/package.json 2>/dev/","ok":true} +{"ts":"2026-04-04T07:44:46.423Z","tool":"Bash","target":"grep -r \"scp\\|ssh\\|ubuntu\" /c/Users/maita/posimai-project/package.json","ok":true} +{"ts":"2026-04-04T07:44:48.731Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/package.json","ok":true} +{"ts":"2026-04-04T07:44:51.135Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/scripts/deploy-dev.sh","ok":true} +{"ts":"2026-04-04T07:47:50.425Z","tool":"Edit","target":"config","ok":true} +{"ts":"2026-04-04T07:47:54.546Z","tool":"Bash","target":"grep -n \"soar\" /c/Users/maita/posimai-project/deploy-server.sh","ok":true} +{"ts":"2026-04-04T07:54:46.481Z","tool":"Bash","target":"grep -n \"brain\\|router\\|app.use\\|prefix\\|mount\" c:/Users/maita/posimai-project/s","ok":true} +{"ts":"2026-04-04T07:56:38.083Z","tool":"Edit","target":"project_status.md","ok":true} +{"ts":"2026-04-04T07:58:14.788Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -maxdepth 2 -type f -name \"package.json\" | h","ok":true} +{"ts":"2026-04-04T07:58:17.002Z","tool":"Bash","target":"ls -la /c/Users/maita/posimai-project | grep \"^d\" | grep -v \"^\\.\" | awk '{print ","ok":true} +{"ts":"2026-04-04T07:58:19.977Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -maxdepth 2 -type f \\( -name \"sw.js\" -o -nam","ok":true} +{"ts":"2026-04-04T07:58:25.282Z","tool":"Bash","target":"wc -l /c/Users/maita/posimai-project/*/sw.js | sort -rn | head -15","ok":true} +{"ts":"2026-04-04T07:58:43.111Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -maxdepth 2 -name \"package.json\" -type f | g","ok":true} +{"ts":"2026-04-04T07:58:48.837Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -maxdepth 2 -name \"index.html\" -type f | hea","ok":true} +{"ts":"2026-04-04T07:58:49.014Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -maxdepth 2 -name \"vercel.json\" -type f","ok":true} +{"ts":"2026-04-04T07:58:49.164Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -maxdepth 2 -name \".gitignore\" -type f","ok":true} +{"ts":"2026-04-04T07:58:51.281Z","tool":"Bash","target":"wc -l /c/Users/maita/posimai-project/*/.gitignore | sort -rn | head -15","ok":true} +{"ts":"2026-04-04T07:58:57.379Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -maxdepth 2 -name \"*.js\" -o -name \"*.ts\" | x","ok":true} +{"ts":"2026-04-04T07:58:58.275Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -maxdepth 3 -path \"*/js/api/*\" -o -path \"*/u","ok":true} +{"ts":"2026-04-04T07:59:01.885Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/docs -type f -name \"*.md\" 2>/dev/null | head","ok":true} +{"ts":"2026-04-04T07:59:04.270Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -maxdepth 2 -type f \\( -name \"*.bak\" -o -nam","ok":true} +{"ts":"2026-04-04T07:59:06.338Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -maxdepth 2 -name \"main.js\" -type f","ok":true} +{"ts":"2026-04-04T07:59:11.346Z","tool":"Bash","target":"grep -n \"navigator.serviceWorker\" /c/Users/maita/posimai-project/posimai-brief/i","ok":true} +{"ts":"2026-04-04T07:59:19.147Z","tool":"Bash","target":"for f in /c/Users/maita/posimai-project/posimai-*/index.html; do echo \"=== $(dir","ok":true} +{"ts":"2026-04-04T07:59:21.508Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -maxdepth 3 -type f -name \"*.js\" ! -path \"*/","ok":true} +{"ts":"2026-04-04T07:59:24.475Z","tool":"Bash","target":"diff -u /c/Users/maita/posimai-project/m-ai-dashboard/script.js /c/Users/maita/p","ok":true} +{"ts":"2026-04-04T07:59:27.034Z","tool":"Bash","target":"md5sum /c/Users/maita/posimai-project/m-ai-dashboard/script.js /c/Users/maita/po","ok":true} +{"ts":"2026-04-04T07:59:31.938Z","tool":"Bash","target":"ls -la /c/Users/maita/posimai-project/_template/","ok":true} +{"ts":"2026-04-04T07:59:32.060Z","tool":"Bash","target":"ls -la /c/Users/maita/posimai-project/_template-minimal/","ok":true} +{"ts":"2026-04-04T07:59:34.026Z","tool":"Bash","target":"wc -l /c/Users/maita/posimai-project/docs/*.md | sort -rn","ok":true} +{"ts":"2026-04-04T08:00:23.231Z","tool":"Bash","target":"grep -r \"^[\\s]*//.*TODO\\|^[\\s]*//.*FIXME\\|^[\\s]*//.*XXX\\|^[\\s]*//.*HACK\" /c/User","ok":true} +{"ts":"2026-04-04T08:00:25.185Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -maxdepth 2 -name \"package.json\" -type f ! -","ok":true} +{"ts":"2026-04-04T08:00:28.116Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -maxdepth 2 -name \"package.json\" -type f ! -","ok":true} +{"ts":"2026-04-04T08:00:30.886Z","tool":"Bash","target":"ls -1 /c/Users/maita/posimai-project | grep -E \"^_|\\.bak$|old|backup|test\" | hea","ok":true} +{"ts":"2026-04-04T08:00:33.695Z","tool":"Bash","target":"grep -r \"m-ai-dashboard\\|article-keeper\\|mai_quick_scan\\|package_ar_info\" /c/Use","ok":true} +{"ts":"2026-04-04T08:00:37.025Z","tool":"Bash","target":"for app in posimai-ambient posimai-atlas posimai-brief posimai-clean posimai-fee","ok":true} +{"ts":"2026-04-04T08:00:39.211Z","tool":"Bash","target":"head -20 /c/Users/maita/posimai-project/docs/master-architecture.md","ok":true} +{"ts":"2026-04-04T08:00:39.529Z","tool":"Bash","target":"grep -n \"old\\|deprecated\\|obsolete\\|archive\\|legacy\" /c/Users/maita/posimai-proj","ok":true} +{"ts":"2026-04-04T08:01:14.250Z","tool":"Bash","target":"wc -l /c/Users/maita/posimai-project/.gitignore && cat /c/Users/maita/posimai-pr","ok":true} +{"ts":"2026-04-04T08:01:14.866Z","tool":"Bash","target":"grep -r \"lucide-react\" /c/Users/maita/posimai-project/*/package.json 2>/dev/null","ok":true} +{"ts":"2026-04-04T08:01:16.067Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/m-ai-dashboard/ 2>/dev/null && diff /c/Users/m","ok":true} +{"ts":"2026-04-04T08:01:36.337Z","tool":"Bash","target":"# sw.js のバリエーション確認(行数でざっくり分類)\nfind /c/Users/maita/posimai-project -name \"sw.js\" ","ok":true} +{"ts":"2026-04-04T08:01:36.576Z","tool":"Bash","target":"# _template の sw.js 確認\ncat /c/Users/maita/posimai-project/_template/sw.js 2>/dev","ok":true} +{"ts":"2026-04-04T08:01:54.045Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/posimai-pulse/sw.js\necho \"---\"\ncat /c/Users/m","ok":true} +{"ts":"2026-04-04T08:02:49.874Z","tool":"Bash","target":"cmd /c \"icacls C:\\Users\\maita\\.ssh\\config /inheritance:r /grant:r \\\"maita:F\\\" 2>","ok":true} +{"ts":"2026-04-04T08:02:52.576Z","tool":"Bash","target":"cmd /c \"ssh soar-vps -o BatchMode=yes -o ConnectTimeout=5 echo ok 2>&1\"","ok":true} +{"ts":"2026-04-04T08:02:55.064Z","tool":"Bash","target":"cmd /c \"icacls C:\\Users\\maita\\.ssh\\config 2>&1\"","ok":true} +{"ts":"2026-04-04T08:02:57.763Z","tool":"Bash","target":"powershell -Command \"icacls 'C:\\Users\\maita\\.ssh\\config'\"","ok":true} +{"ts":"2026-04-04T08:03:01.550Z","tool":"Bash","target":"powershell -Command \"icacls 'C:\\Users\\maita\\.ssh\\config' /inheritance:r /grant:r","ok":true} +{"ts":"2026-04-04T08:03:04.237Z","tool":"Bash","target":"powershell -Command \"icacls 'C:\\Users\\maita\\.ssh\\config'\"","ok":true} +{"ts":"2026-04-04T08:03:08.558Z","tool":"Bash","target":"powershell -Command \"ssh soar-vps 'echo connected' 2>&1\"","ok":true} +{"ts":"2026-04-04T08:05:19.203Z","tool":"Edit","target":"sw.js","ok":true} +{"ts":"2026-04-04T08:05:26.457Z","tool":"Bash","target":"grep -r \"maita\" /c/Users/maita/posimai-project/deploy-server.sh /c/Users/maita/p","ok":true} +{"ts":"2026-04-04T08:05:36.520Z","tool":"Edit","target":"package.json","ok":true} +{"ts":"2026-04-04T08:05:51.035Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-brain && git add sw.js && git commit -","ok":true} +{"ts":"2026-04-04T08:05:59.580Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-dashboard && git add package.json && g","ok":true} +{"ts":"2026-04-04T08:06:07.069Z","tool":"Bash","target":"grep -rn \"maita\" /c/Users/maita/posimai-project/ --include=\"*.sh\" --include=\"*.j","ok":true} +{"ts":"2026-04-04T08:06:12.700Z","tool":"Bash","target":"# VPS・NASのサーバー側でmaitaが使われていないか確認\ngrep -rn \"User maita\\|user.*maita\\|maita@\" /c/U","ok":true} +{"ts":"2026-04-04T08:07:15.585Z","tool":"Bash","target":"cat ~/.ssh/config 2>/dev/null | head -30","ok":true} +{"ts":"2026-04-04T08:07:19.235Z","tool":"Bash","target":"ssh soar-vps \"grep -i 'google\\|github' /opt/posimai/.env 2>/dev/null || echo 'NO","ok":true} +{"ts":"2026-04-04T08:07:28.696Z","tool":"Bash","target":"ssh soar-vps \"cat /opt/posimai/.env\"","ok":true} +{"ts":"2026-04-04T08:07:35.430Z","tool":"Bash","target":"ssh soar-vps \"cat -A /opt/posimai/.env\"","ok":true} +{"ts":"2026-04-04T08:07:46.105Z","tool":"Bash","target":"ssh soar-vps \"printf 'GOOGLE_CLIENT_ID=1002558072849-ljg855kof4jvtkvv2v47mhq3avf","ok":true} +{"ts":"2026-04-04T08:07:50.328Z","tool":"Bash","target":"ssh soar-vps \"ls /opt/posimai/ && cat /opt/posimai/.env\"","ok":true} +{"ts":"2026-04-04T08:07:55.822Z","tool":"Bash","target":"ssh soar-vps \"cat /opt/posimai/docker-compose.yml\"","ok":true} +{"ts":"2026-04-04T08:08:02.426Z","tool":"Bash","target":"ssh soar-vps \"cd /opt/posimai && sed -i '/MAGIC_LINK_BASE_URL=.*/a\\ - GOOGL","ok":true} +{"ts":"2026-04-04T08:08:05.951Z","tool":"Bash","target":"ssh soar-vps \"rm /opt/posimai/.env && echo 'removed'\"","ok":true} +{"ts":"2026-04-04T08:09:12.668Z","tool":"Bash","target":"find \"c:\\Users\\maita\\posimai-project\\posimai-dev\" -type f -name \"*.json\" -o -nam","ok":true} +{"ts":"2026-04-04T08:09:12.810Z","tool":"Bash","target":"find \"c:\\Users\\maita\\posimai-project\\supabase\" -type f 2>/dev/null | head -20","ok":true} +{"ts":"2026-04-04T08:09:19.539Z","tool":"Bash","target":"find \"c:\\Users\\maita\\posimai-project\" -maxdepth 1 -type f \\( -name \"*.md\" -o -na","ok":true} +{"ts":"2026-04-04T08:09:26.961Z","tool":"Bash","target":"wc -l \"c:\\Users\\maita\\posimai-project\\server.js\" && grep -n \"ENV\\|SECRET\\|KEY\\|P","ok":true} +{"ts":"2026-04-04T08:09:32.267Z","tool":"Bash","target":"ls -la \"c:\\Users\\maita\\posimai-project\" | grep -E \"^\\.|\\.env|secret|key\"","ok":true} +{"ts":"2026-04-04T08:09:32.642Z","tool":"Bash","target":"cd \"c:\\Users\\maita\\posimai-project\" && git remote -v 2>/dev/null | head -10","ok":true} +{"ts":"2026-04-04T08:09:35.258Z","tool":"Bash","target":"grep -n \"docker\\|Docker\\|compose\" \"c:\\Users\\maita\\posimai-project\\deploy-server.","ok":true} +{"ts":"2026-04-04T08:09:36.179Z","tool":"Bash","target":"find \"c:\\Users\\maita\\posimai-project\" -maxdepth 2 -name \"docker-compose*\" -o -na","ok":true} +{"ts":"2026-04-04T08:09:38.653Z","tool":"Bash","target":"find \"c:\\Users\\maita\\posimai-project\\scripts\" -type f 2>/dev/null","ok":true} +{"ts":"2026-04-04T08:09:49.990Z","tool":"Bash","target":"grep -r \"db\\|DB\\|password\\|PASSWORD\\|secret\\|SECRET\" \"c:\\Users\\maita\\posimai-pro","ok":true} +{"ts":"2026-04-04T08:10:25.567Z","tool":"Bash","target":"git remote -v && echo \"---\" && git config user.name && git config user.email","ok":true} +{"ts":"2026-04-04T08:11:07.629Z","tool":"Bash","target":"grep -r \"\\.env\\|process\\.env\" \"c:\\Users\\maita\\posimai-project\\server.js\" | head ","ok":true} +{"ts":"2026-04-04T08:12:14.103Z","tool":"Bash","target":"grep -n \"JWT_SECRET\\|API_KEY\\|RESEND\\|SECRET\" /c/Users/maita/posimai-project/ser","ok":true} +{"ts":"2026-04-04T08:12:15.524Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/.stfolder 2>/dev/null || echo \"not a file\"; l","ok":true} +{"ts":"2026-04-04T08:12:21.469Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o ConnectTimeout=10 -o BatchMode=yes root","ok":true} +{"ts":"2026-04-04T08:12:30.774Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o ConnectTimeout=10 -o BatchMode=yes root","ok":true} +{"ts":"2026-04-04T08:12:38.779Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o ConnectTimeout=10 -o BatchMode=yes root","ok":true} +{"ts":"2026-04-04T08:12:43.406Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o ConnectTimeout=10 -o BatchMode=yes root","ok":true} +{"ts":"2026-04-04T08:12:46.972Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o ConnectTimeout=10 -o BatchMode=yes root","ok":true} +{"ts":"2026-04-04T08:14:30.533Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o ConnectTimeout=10 -o BatchMode=yes root","ok":true} +{"ts":"2026-04-04T08:14:32.052Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/.stfolder /c/Users/maita/posimai-project/.stig","ok":true} +{"ts":"2026-04-04T08:18:31.296Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o ConnectTimeout=10 -o BatchMode=yes root","ok":true} +{"ts":"2026-04-04T08:23:42.801Z","tool":"Bash","target":"ssh soar-vps \"grep -c 'GITHUB_CLIENT' /opt/posimai/docker-compose.yml 2>/dev/nul","ok":true} +{"ts":"2026-04-04T08:23:47.380Z","tool":"Bash","target":"ssh soar-vps \"grep 'GITHUB_CLIENT' /opt/posimai/docker-compose.yml\"","ok":true} +{"ts":"2026-04-04T08:23:53.560Z","tool":"Bash","target":"ssh soar-vps \"sed -i 's/^   - GITHUB_CLIENT_ID=/ - GITHUB_CLIENT_ID=/' /opt","ok":true} +{"ts":"2026-04-04T08:23:58.916Z","tool":"Bash","target":"ssh soar-vps \"sed -i '/GITHUB_CLIENT/d' /opt/posimai/docker-compose.yml && sed -","ok":true} +{"ts":"2026-04-04T08:24:04.822Z","tool":"Bash","target":"ssh soar-vps \"grep -n 'auth/magic-link\\|auth/passkey\\|auth/session\\|buildRouter\\","ok":true} +{"ts":"2026-04-04T08:24:08.814Z","tool":"Bash","target":"ssh soar-vps \"grep -n 'magic-link/verify\\|session/verify\\|passkey/login/finish\\|","ok":true} +{"ts":"2026-04-04T08:24:12.147Z","tool":"Bash","target":"ssh soar-vps \"sed -n '780,815p' /opt/posimai/server.js\"","ok":true} +{"ts":"2026-04-04T08:24:23.643Z","tool":"Bash","target":"ssh soar-vps \"sed -n '60,80p' /opt/posimai/server.js\"","ok":true} +{"ts":"2026-04-04T08:24:48.034Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-04T08:24:54.452Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-04T08:25:16.945Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-04T08:25:26.555Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git add server.js && git commit -m \"feat: a","ok":true} +{"ts":"2026-04-04T08:25:49.515Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && bash deploy-server.sh 2>&1 | tail -20","ok":true} +{"ts":"2026-04-04T08:25:58.865Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-dashboard && git add src/app/login/pag","ok":true} +{"ts":"2026-04-04T08:26:02.999Z","tool":"Bash","target":"ssh soar-vps \"cat /opt/posimai/docker-compose.yml\"","ok":true} +{"ts":"2026-04-04T08:31:30.812Z","tool":"Bash","target":"find \"c:\\Users\\maita\\posimai-project\\posimai-station-app\" -type f -name \"*.html\"","ok":true} +{"ts":"2026-04-04T08:31:32.599Z","tool":"Bash","target":"find \"c:\\Users\\maita\\posimai-project\\posimai-atlas\" -type f -name \"*.html\" -o -n","ok":true} +{"ts":"2026-04-04T08:31:36.728Z","tool":"Bash","target":"ls -la '/c/Users/maita/posimai-project/posimai-station-app/'","ok":true} +{"ts":"2026-04-04T08:31:38.230Z","tool":"Bash","target":"ls -la '/c/Users/maita/posimai-project/posimai-station-app/renderer/'","ok":true} +{"ts":"2026-04-04T08:31:41.447Z","tool":"Bash","target":"ls -la '/c/Users/maita/posimai-project/posimai-atlas/'","ok":true} +{"ts":"2026-04-04T08:32:06.191Z","tool":"Bash","target":"wc -l '/c/Users/maita/posimai-project/posimai-atlas/index.html'","ok":true} +{"ts":"2026-04-04T08:35:12.954Z","tool":"Bash","target":"ssh soar-vps \"cd /opt/posimai && docker compose up -d --force-recreate api && sl","ok":true} +{"ts":"2026-04-04T08:35:23.516Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-04T08:35:33.656Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-dashboard && git add src/app/login/pag","ok":true} +{"ts":"2026-04-04T08:36:11.827Z","tool":"Edit","target":"project_station_cockpit.md","ok":true} +{"ts":"2026-04-04T08:36:31.034Z","tool":"Bash","target":"grep -n \"station\" /c/Users/maita/posimai-project/posimai-dev/src/server.js 2>/de","ok":true} +{"ts":"2026-04-04T08:36:31.923Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-dev/","ok":true} +{"ts":"2026-04-04T08:36:37.332Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/posimai-dev/package.json","ok":true} +{"ts":"2026-04-04T08:36:37.847Z","tool":"Bash","target":"grep -n \"station\" /c/Users/maita/posimai-project/posimai-dev/server.js | head -1","ok":true} +{"ts":"2026-04-04T08:36:44.554Z","tool":"Bash","target":"grep -n \"deploy:dev\\|deploy-dev\\|posimai-dev\" /c/Users/maita/posimai-project/pac","ok":true} +{"ts":"2026-04-04T08:36:48.981Z","tool":"Bash","target":"git add posimai-dev/station-b.html && git status --short posimai-dev/ 2>&1","ok":true} +{"ts":"2026-04-04T08:36:52.470Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/scripts/deploy-dev.sh","ok":true} +{"ts":"2026-04-04T08:37:04.892Z","tool":"Bash","target":"ssh posimai-pc \"mkdir -p ~/posimai-project/posimai-dev && ls ~/posimai-project/p","ok":true} +{"ts":"2026-04-04T08:37:33.484Z","tool":"Bash","target":"npm run deploy:dev 2>&1","ok":true} +{"ts":"2026-04-04T09:07:37.408Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -type f -name \"*.js\" -o -name \"*.ts\" -o -nam","ok":true} +{"ts":"2026-04-04T09:07:39.674Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-together/","ok":true} +{"ts":"2026-04-04T09:07:45.094Z","tool":"Bash","target":"grep -n \"summary\\|summarize\\|AI\\|gemini\\|fetch.*title\\|ogp\\|og:title\" /c/Users/m","ok":true} +{"ts":"2026-04-04T09:07:49.400Z","tool":"Bash","target":"grep -n \"archive_status\\|together-archive\\|edge.*function\\|supabase.*function\\|i","ok":true} +{"ts":"2026-04-04T09:08:00.100Z","tool":"Bash","target":"cat supabase/config.toml | grep -A5 \"project_id\\|\\[api\\]\" | head -20","ok":true} +{"ts":"2026-04-04T09:08:13.748Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/supabase/config.toml 2>/dev/null | grep \"proj","ok":true} +{"ts":"2026-04-04T09:11:01.573Z","tool":"Edit","target":"project_status.md","ok":true} +{"ts":"2026-04-04T09:23:46.667Z","tool":"Bash","target":"git log --oneline --all -- posimai-together/ supabase/functions/together-archive","ok":true} +{"ts":"2026-04-04T09:23:49.274Z","tool":"Bash","target":"git log --oneline -20\necho \"---\"\ngit log --oneline --all | head -20","ok":true} +{"ts":"2026-04-04T09:23:52.916Z","tool":"Bash","target":"git show 9e6a298 --stat\necho \"---\"\ngit show 9e6a298 -- supabase/functions/togeth","ok":true} +{"ts":"2026-04-04T09:23:57.386Z","tool":"Bash","target":"# together関連のファイルが最後に変更されたのはいつか\ngit log --oneline -- supabase/functions/together","ok":true} +{"ts":"2026-04-04T09:24:02.224Z","tool":"Bash","target":"git log --oneline --all --full-history -- \"supabase/functions/together-archive/i","ok":true} +{"ts":"2026-04-04T09:24:07.084Z","tool":"Bash","target":"# deploy-edge.shがposimai-togetherフォルダからデプロイしているが、\n# 実際のsupabase/functions/の場所を確認","ok":true} +{"ts":"2026-04-04T09:24:10.204Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-together/supabase/functions/together-a","ok":true} +{"ts":"2026-04-04T09:24:13.810Z","tool":"Bash","target":"diff /c/Users/maita/posimai-project/posimai-together/supabase/functions/together","ok":true} +{"ts":"2026-04-04T09:24:19.116Z","tool":"Bash","target":"git log --oneline --all --full-history -- \"posimai-together/supabase/functions/t","ok":true} +{"ts":"2026-04-04T09:33:43.590Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/deploy-edge.sh","ok":true} +{"ts":"2026-04-04T09:33:48.792Z","tool":"Edit","target":"deploy-edge.sh","ok":true} +{"ts":"2026-04-04T09:33:52.837Z","tool":"Bash","target":"ls ~/.supabase-token 2>/dev/null && echo \"exists\" || echo \"not found\"","ok":true} +{"ts":"2026-04-04T09:33:57.469Z","tool":"Bash","target":"bash deploy-edge.sh 2>&1","ok":true} +{"ts":"2026-04-04T12:05:46.706Z","tool":"Bash","target":"git add deploy-edge.sh && git commit -m \"fix: add --no-verify-jwt to together-ar","ok":true} +{"ts":"2026-04-04T12:05:56.256Z","tool":"Bash","target":"npm run deploy 2>&1","ok":true} +{"ts":"2026-04-04T12:07:21.323Z","tool":"Bash","target":"ssh soar-vps \"find /opt /root /home -name '.env' -o -name 'docker-compose.yml' 2","ok":true} +{"ts":"2026-04-04T12:07:24.389Z","tool":"Bash","target":"ssh soar-vps \"cat /opt/posimai/docker-compose.yml\"","ok":true} +{"ts":"2026-04-04T12:07:29.004Z","tool":"Bash","target":"ssh soar-vps \"cd /opt/posimai && docker compose exec api node -e \\\"require('@sim","ok":true} +{"ts":"2026-04-04T12:07:35.382Z","tool":"Bash","target":"ssh soar-vps \"cd /opt/posimai && docker compose exec api node -e \\\"import('@simp","ok":true} +{"ts":"2026-04-04T12:07:39.941Z","tool":"Bash","target":"ssh soar-vps \"curl -s http://localhost:8090/auth/passkey/register/begin -X POST ","ok":true} +{"ts":"2026-04-04T12:07:52.126Z","tool":"Bash","target":"ssh soar-vps \"curl -s -o /dev/null -w '%{http_code}' http://localhost:8090/auth/","ok":true} +{"ts":"2026-04-04T12:07:56.504Z","tool":"Bash","target":"ssh soar-vps \"curl -s http://localhost:8090/ 2>&1 | head -3\"\nssh soar-vps \"curl ","ok":true} +{"ts":"2026-04-04T12:08:00.113Z","tool":"Bash","target":"grep -n \"passkey\\|webauthn\\|register\\|login/begin\" /c/Users/maita/posimai-projec","ok":true} +{"ts":"2026-04-04T12:08:04.673Z","tool":"Bash","target":"grep -n \"app.use\\|router\\|prefix\\|mount\" /c/Users/maita/posimai-project/server.j","ok":true} +{"ts":"2026-04-04T12:08:09.659Z","tool":"Bash","target":"ssh soar-vps \"curl -s -o /dev/null -w '%{http_code}' http://localhost:8090/api/a","ok":true} +{"ts":"2026-04-04T12:08:13.725Z","tool":"Bash","target":"grep -n \"passkey\\|webauthn\\|register\\|login/begin\\|login/finish\\|api/auth\" /c/Us","ok":true} +{"ts":"2026-04-04T12:08:19.507Z","tool":"Bash","target":"grep -n \"API_BASE\\|NEXT_PUBLIC\" /c/Users/maita/posimai-project/posimai-dashboard","ok":true} +{"ts":"2026-04-04T12:08:26.010Z","tool":"Bash","target":"ssh soar-vps \"curl -s -o /dev/null -w '%{http_code}' https://api.soar-enrich.com","ok":true} +{"ts":"2026-04-04T13:20:38.937Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/","ok":true} +{"ts":"2026-04-04T13:21:19.634Z","tool":"Bash","target":"grep -n \"SELECT id FROM users\" /c/Users/maita/posimai-project/server.js","ok":true} +{"ts":"2026-04-04T13:21:22.551Z","tool":"Bash","target":"grep -n \"localStorage\\|API_KEY\\|pk_\\|X-API-Key\" /c/Users/maita/posimai-project/p","ok":true} +{"ts":"2026-04-04T13:21:23.041Z","tool":"Bash","target":"grep -rn \"innerHTML\\s*=\" /c/Users/maita/posimai-project/posimai-brain/index.html","ok":true} +{"ts":"2026-04-04T13:21:25.038Z","tool":"Bash","target":"grep -n \"innerHTML\" /c/Users/maita/posimai-project/posimai-brain/index.html | he","ok":true} +{"ts":"2026-04-04T13:21:26.235Z","tool":"Bash","target":"grep -rn \"innerHTML\" /c/Users/maita/posimai-project/posimai-journal/index.html 2","ok":true} +{"ts":"2026-04-04T13:21:29.793Z","tool":"Bash","target":"grep -n \"escHtml\\|escapeHtml\\|DOMPurify\" /c/Users/maita/posimai-project/posimai-","ok":true} +{"ts":"2026-04-04T13:21:33.518Z","tool":"Bash","target":"# Check health endpoint - publicly accessible\ngrep -n \"auth-test\\|\\/health\" /c/U","ok":true} +{"ts":"2026-04-04T13:21:34.021Z","tool":"Bash","target":"grep -n \"state.*oauth\\|oauth.*state\\|csrf\" /c/Users/maita/posimai-project/server","ok":true} +{"ts":"2026-04-04T13:22:04.439Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-04T13:22:13.851Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-04T13:22:28.229Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-04T13:22:44.117Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-04T13:38:24.431Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/ponshu_room_lite -type f | head -80","ok":true} +{"ts":"2026-04-04T13:38:31.180Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/ponshu_room_lite/lib -type f -name \"*.dart\" ","ok":true} +{"ts":"2026-04-04T13:38:32.758Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/ponshu_room_lite -maxdepth 2 -type f \\( -nam","ok":true} +{"ts":"2026-04-04T13:39:10.199Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/ponshu_room_lite/android -name \"AndroidManif","ok":true} +{"ts":"2026-04-04T13:58:19.818Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/ponshu_room_lite && git log --oneline -5 2>/de","ok":true} +{"ts":"2026-04-04T13:58:33.087Z","tool":"Bash","target":"git tag stable-pre-cleanup && git tag","ok":true} +{"ts":"2026-04-04T13:58:39.664Z","tool":"Bash","target":"grep -rn \"// Phase\\|// v1\\.\\|// Phase 3-B\\|// 🔍 DEBUG\\|// CRITICAL FIX\\|// TODO","ok":true} +{"ts":"2026-04-04T13:58:41.210Z","tool":"Bash","target":"grep -rn \"debugPrint\" lib/ --include=\"*.dart\" | grep -v \".g.dart\" | wc -l && ech","ok":true} +{"ts":"2026-04-04T13:59:39.282Z","tool":"Edit","target":"camera_screen.dart","ok":true} +{"ts":"2026-04-04T14:00:01.599Z","tool":"Edit","target":"main.dart","ok":true} +{"ts":"2026-04-04T14:00:06.678Z","tool":"Edit","target":"main.dart","ok":true} +{"ts":"2026-04-04T14:00:21.238Z","tool":"Edit","target":"soul_screen.dart","ok":true} +{"ts":"2026-04-04T14:00:23.611Z","tool":"Edit","target":"main_screen.dart","ok":true} +{"ts":"2026-04-04T14:00:33.377Z","tool":"Edit","target":"camera_screen.dart","ok":true} +{"ts":"2026-04-04T14:00:39.049Z","tool":"Edit","target":"camera_screen.dart","ok":true} +{"ts":"2026-04-04T14:00:43.130Z","tool":"Edit","target":"camera_screen.dart","ok":true} +{"ts":"2026-04-04T14:00:46.843Z","tool":"Bash","target":"grep -n \"health\\|API_KEY\\|X-API-Key\\|Authorization\" /c/Users/maita/posimai-proje","ok":true} +{"ts":"2026-04-04T14:00:49.345Z","tool":"Edit","target":"camera_screen.dart","ok":true} +{"ts":"2026-04-04T14:00:53.223Z","tool":"Edit","target":"camera_screen.dart","ok":true} +{"ts":"2026-04-04T14:00:57.138Z","tool":"Edit","target":"camera_screen.dart","ok":true} +{"ts":"2026-04-04T14:01:09.224Z","tool":"Edit","target":"language_selector.dart","ok":true} +{"ts":"2026-04-04T14:01:23.320Z","tool":"Edit","target":"home_screen.dart","ok":true} +{"ts":"2026-04-04T14:01:24.371Z","tool":"Edit","target":"home_screen.dart","ok":true} +{"ts":"2026-04-04T14:01:26.900Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-04T14:01:31.278Z","tool":"Edit","target":"camera_screen.dart","ok":true} +{"ts":"2026-04-04T14:01:32.418Z","tool":"Edit","target":"camera_screen.dart","ok":true} +{"ts":"2026-04-04T14:01:35.611Z","tool":"Bash","target":"grep -n \"API_KEY\\|POSIMAI_API_KEY\\|VPS_API_KEY\\|pk_\" /c/Users/maita/posimai-proj","ok":true} +{"ts":"2026-04-04T14:01:46.099Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-04T14:01:46.099Z","tool":"Edit","target":"sake_list_provider.dart","ok":true} +{"ts":"2026-04-04T14:01:47.521Z","tool":"Edit","target":"brewery_map_screen.dart","ok":true} +{"ts":"2026-04-04T14:01:51.538Z","tool":"Bash","target":"grep -n \"analyze\\|\\/analyze\\|Gemini\\|gemini\" /c/Users/maita/posimai-project/serv","ok":true} +{"ts":"2026-04-04T14:01:54.310Z","tool":"Bash","target":"grep -n \"r\\.post.*analyz\\|r\\.get.*analyz\\|\\/analyze\\|analyzeWithGemini\" /c/Users","ok":true} +{"ts":"2026-04-04T14:01:57.289Z","tool":"Edit","target":"activity_stats.dart","ok":true} +{"ts":"2026-04-04T14:01:57.706Z","tool":"Bash","target":"grep -n \"r\\.post\\|r\\.get\\|r\\.patch\\|r\\.delete\" /c/Users/maita/posimai-project/se","ok":true} +{"ts":"2026-04-04T14:01:59.346Z","tool":"Edit","target":"sommelier_screen.dart","ok":true} +{"ts":"2026-04-04T14:02:14.284Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-04T14:02:32.004Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-04T14:02:32.563Z","tool":"Bash","target":"flutter analyze lib/ 2>&1 | tail -10","ok":true} +{"ts":"2026-04-04T14:02:39.262Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-04T14:02:46.744Z","tool":"Bash","target":"git add lib/ && git diff --cached --stat","ok":true} +{"ts":"2026-04-04T14:02:51.033Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-04T14:02:52.299Z","tool":"Bash","target":"git commit -m \"$(cat <<'EOF'\nchore: remove development phase markers and dead co","ok":true} +{"ts":"2026-04-04T14:03:06.579Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-04T14:03:28.658Z","tool":"Bash","target":"bash deploy-server.sh 2>&1","ok":true} +{"ts":"2026-04-04T14:03:32.213Z","tool":"Bash","target":"curl -s https://api.soar-enrich.com/brain/api/health | head -c 200","ok":true} +{"ts":"2026-04-04T14:03:35.739Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/deploy-server.sh | grep VPS_HOST","ok":true} +{"ts":"2026-04-04T14:03:38.609Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/package.json | grep \"deploy:dev\\|ubuntu\\|scp\"","ok":true} +{"ts":"2026-04-04T14:04:10.392Z","tool":"Bash","target":"npm run deploy:dev 2>&1","ok":true} +{"ts":"2026-04-04T14:04:13.790Z","tool":"Bash","target":"git add server.js posimai-dev/server.js && git diff --staged --stat","ok":true} +{"ts":"2026-04-04T14:04:20.741Z","tool":"Bash","target":"git commit -m \"$(cat <<'EOF'\nfix: security hardening for commercial release\n\n- F","ok":true} +{"ts":"2026-04-04T14:04:27.360Z","tool":"Bash","target":"git push gitea main && git push github main","ok":true} +{"ts":"2026-04-04T14:04:59.305Z","tool":"Write","target":"project_ponshu_consumer_split.md","ok":true} +{"ts":"2026-04-04T14:05:09.644Z","tool":"Edit","target":"MEMORY.md","ok":true} +{"ts":"2026-04-04T14:06:59.044Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem root@85.131.245.239 \"grep API_KEYS /opt/po","ok":true} +{"ts":"2026-04-04T14:07:03.045Z","tool":"Bash","target":"ssh posimai-pc \"grep VPS_API_KEY ~/posimai-project/posimai-dev/.env 2>/dev/null ","ok":true} +{"ts":"2026-04-04T14:07:17.624Z","tool":"Bash","target":"ssh posimai-pc \"echo 'VPS_API_KEY=pk_maita_a2be09f6eaaba0db65b72f085ea352d3' >> ","ok":true} +{"ts":"2026-04-04T14:08:30.717Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem root@85.131.245.239 \"grep JWT_SECRET /opt/","ok":true} +{"ts":"2026-04-04T14:08:33.682Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem root@85.131.245.239 \"cat /opt/posimai/.env","ok":true} +{"ts":"2026-04-04T14:08:37.681Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem root@85.131.245.239 \"cat /opt/posimai/dock","ok":true} +{"ts":"2026-04-04T14:08:41.210Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem root@85.131.245.239 \"grep JWT_SECRET /opt/","ok":true} +{"ts":"2026-04-04T14:09:29.532Z","tool":"Edit","target":"main.dart","ok":true} +{"ts":"2026-04-04T14:09:39.373Z","tool":"Edit","target":"main_screen.dart","ok":true} +{"ts":"2026-04-04T14:10:01.191Z","tool":"Write","target":"build_consumer.sh","ok":true} +{"ts":"2026-04-04T14:10:10.990Z","tool":"Write","target":"build_business.sh","ok":true} +{"ts":"2026-04-04T14:10:20.394Z","tool":"Bash","target":"nslookup test.posimai.soar-enrich.com 8.8.8.8 2>&1","ok":true} +{"ts":"2026-04-04T14:10:22.465Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem root@85.131.245.239 \"crontab -l 2>/dev/nul","ok":true} +{"ts":"2026-04-04T14:10:31.356Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && flutter analyze 2>&1","ok":true} +{"ts":"2026-04-04T14:11:51.402Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem root@85.131.245.239 \"\necho '=== CPU/RAM ==","ok":true} +{"ts":"2026-04-04T14:12:01.884Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem root@85.131.245.239 \"\necho '=== SSH 設定(roo","ok":true} +{"ts":"2026-04-04T14:12:24.038Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem root@85.131.245.239 \"\necho '=== SSL 自動更新 =","ok":true} +{"ts":"2026-04-04T14:13:15.894Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem root@85.131.245.239 \"\n# UFW: 必要ポートのみ開放してから","ok":true} +{"ts":"2026-04-04T14:13:33.087Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem root@85.131.245.239 \"\napt-get install -y f","ok":true} +{"ts":"2026-04-04T14:13:34.863Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && git status && git diff lib","ok":true} +{"ts":"2026-04-04T14:13:36.894Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem root@85.131.245.239 \"\n# API が引き続き応答するか確認\nc","ok":true} +{"ts":"2026-04-04T14:13:40.512Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && git add lib/main.dart lib/","ok":true} +{"ts":"2026-04-04T14:13:55.974Z","tool":"Edit","target":"project_ponshu_consumer_split.md","ok":true} +{"ts":"2026-04-04T14:15:38.167Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && bash build_consumer.sh 2>&","ok":true} +{"ts":"2026-04-04T14:15:58.387Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/ponshu_room_lite/lib -type f -name \"*.dart\" ","ok":true} +{"ts":"2026-04-04T14:16:04.271Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/ponshu_room_lite/lib -type f -name \"*.dart\" ","ok":true} +{"ts":"2026-04-04T14:18:29.506Z","tool":"Bash","target":"tail -20 \"C:\\Users\\maita\\AppData\\Local\\Temp\\claude\\c--Users-maita-posimai-projec","ok":true} +{"ts":"2026-04-04T14:19:03.744Z","tool":"Bash","target":"head -60 \"C:\\Users\\maita\\AppData\\Local\\Temp\\claude\\c--Users-maita-posimai-projec","ok":true} +{"ts":"2026-04-04T14:19:10.826Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && strings build/apk_releases","ok":true} +{"ts":"2026-04-04T14:19:43.299Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && cat .env 2>/dev/null | gre","ok":true} +{"ts":"2026-04-04T14:31:58.143Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && powershell -Command \"\nAdd-","ok":true} +{"ts":"2026-04-04T14:32:11.221Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && powershell -Command \"\nAdd-","ok":true} +{"ts":"2026-04-04T14:37:07.027Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && git show c0a23d2 --stat &&","ok":true} +{"ts":"2026-04-04T14:40:28.192Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/ponshu_room_lite/web/download/ && echo \"---\" &","ok":true} +{"ts":"2026-04-04T14:40:28.577Z","tool":"Bash","target":"grep -E \"versionCode|versionName\" c:/Users/maita/posimai-project/ponshu_room_lit","ok":true} +{"ts":"2026-04-04T14:40:30.982Z","tool":"Bash","target":"grep -E \"version:\" c:/Users/maita/posimai-project/ponshu_room_lite/pubspec.yaml ","ok":true} +{"ts":"2026-04-04T14:43:02.102Z","tool":"Bash","target":"grep -n \"hero\\|price\\|buy\\|cta\\|購入\\|¥\\|円\\|h1\\|h2\" /c/Users/maita/posimai-project","ok":true} +{"ts":"2026-04-04T14:43:02.682Z","tool":"Bash","target":"grep -n \"hero\\|price\\|buy\\|cta\\|購入\\|¥\\|円\\|h1\\|h2\" /c/Users/maita/posimai-project","ok":true} +{"ts":"2026-04-04T14:44:25.782Z","tool":"Edit","target":"pubspec.yaml","ok":true} +{"ts":"2026-04-04T14:44:35.329Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && bash build_consumer.sh 2>&","ok":true} +{"ts":"2026-04-04T14:45:37.160Z","tool":"Bash","target":"tail -10 \"C:\\Users\\maita\\AppData\\Local\\Temp\\claude\\c--Users-maita-posimai-projec","ok":true} +{"ts":"2026-04-04T14:45:45.755Z","tool":"Bash","target":"GITEA_PASS=$(git -C c:/Users/maita/posimai-project/ponshu_room_lite credential f","ok":true} +{"ts":"2026-04-04T14:45:47.881Z","tool":"Bash","target":"cat /tmp/release_response.json","ok":true} +{"ts":"2026-04-04T14:45:56.602Z","tool":"Bash","target":"GITEA_PASS=$(git credential fill <<< $'protocol=http\\nhost=100.76.7.3:3000' | gr","ok":true} +{"ts":"2026-04-04T14:46:05.863Z","tool":"Bash","target":"GITEA_PASS=$(git credential fill <<< $'protocol=http\\nhost=100.76.7.3:3000' | gr","ok":true} +{"ts":"2026-04-04T14:46:10.221Z","tool":"Bash","target":"GITEA_PASS=$(git credential fill <<< $'protocol=http\\nhost=100.76.7.3:3000' | gr","ok":true} +{"ts":"2026-04-04T14:46:13.580Z","tool":"Bash","target":"GITEA_PASS=$(git credential fill <<< $'protocol=http\\nhost=100.76.7.3:3000' | gr","ok":true} +{"ts":"2026-04-04T14:46:25.958Z","tool":"Bash","target":"GITEA_PASS=$(git credential fill <<< $'protocol=http\\nhost=100.76.7.3:3000' | gr","ok":true} +{"ts":"2026-04-04T14:46:35.103Z","tool":"Bash","target":"GITEA_PASS=$(git credential fill <<< $'protocol=http\\nhost=100.76.7.3:3000' | gr","ok":true} +{"ts":"2026-04-04T14:47:10.963Z","tool":"Edit","target":"releases.json","ok":true} +{"ts":"2026-04-04T14:47:20.070Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && git add pubspec.yaml web/d","ok":true} +{"ts":"2026-04-04T14:47:26.113Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && npm run deploy 2>&1","ok":true} +{"ts":"2026-04-04T14:47:30.928Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && git remote -v && echo \"---","ok":true} +{"ts":"2026-04-04T14:47:40.994Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && cat package.json | grep -A","ok":true} +{"ts":"2026-04-04T14:47:46.745Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && git push gitea main 2>&1","ok":true} +{"ts":"2026-04-04T14:47:55.678Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/ponshu_room_lite/vercel.json 2>/dev/null || ec","ok":true} +{"ts":"2026-04-04T14:48:01.271Z","tool":"Bash","target":"cat c:/Users/maita/posimai-project/ponshu_room_lite/web/download/DEPLOYMENT_GUID","ok":true} +{"ts":"2026-04-04T14:48:03.937Z","tool":"Bash","target":"cat c:/Users/maita/posimai-project/ponshu_room_lite/web/download/DEPLOYMENT_GUID","ok":true} +{"ts":"2026-04-04T14:48:07.095Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && cat web/download/.gitignor","ok":true} +{"ts":"2026-04-04T14:48:13.610Z","tool":"Bash","target":"cat c:/Users/maita/posimai-project/ponshu_room_lite/web/download/.vercel/project","ok":true} +{"ts":"2026-04-04T14:48:32.236Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite/web/download && vercel --prod","ok":true} +{"ts":"2026-04-04T14:48:39.195Z","tool":"Bash","target":"curl -s https://ponshu-room-download.vercel.app/releases.json 2>/dev/null | grep","ok":true} +{"ts":"2026-04-04T14:48:43.437Z","tool":"Bash","target":"curl -s https://download-6kkizo36s-posimais-projects.vercel.app/releases.json 2>","ok":true} +{"ts":"2026-04-04T14:49:03.051Z","tool":"Write","target":"index-c.html","ok":true} +{"ts":"2026-04-04T17:18:45.228Z","tool":"Bash","target":"curl -sI https://ponshu-room-download.vercel.app/ | grep -E \"x-vercel-id|x-deplo","ok":true} +{"ts":"2026-04-04T17:18:51.643Z","tool":"Bash","target":"git add posimai-store/ && git commit -m \"$(cat <<'EOF'\nredesign: posimai-store i","ok":true} +{"ts":"2026-04-04T17:18:51.991Z","tool":"Bash","target":"vercel ls --scope posimais-projects 2>&1 | grep -i download | head -10","ok":true} +{"ts":"2026-04-04T17:18:56.315Z","tool":"Bash","target":"vercel domains ls --scope posimais-projects 2>&1 | head -20","ok":true} +{"ts":"2026-04-04T17:19:00.968Z","tool":"Bash","target":"vercel project ls --scope posimais-projects 2>&1","ok":true} +{"ts":"2026-04-04T17:19:05.804Z","tool":"Bash","target":"curl -s https://download-beta-bay.vercel.app/releases.json | grep -E \"version|da","ok":true} +{"ts":"2026-04-04T17:19:10.280Z","tool":"Bash","target":"grep -r \"ponshu-room-download\\|download-beta-bay\" c:/Users/maita/posimai-project","ok":true} +{"ts":"2026-04-04T17:19:12.817Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-store && git add index-c.html && git c","ok":true} +{"ts":"2026-04-04T17:19:15.690Z","tool":"Bash","target":"vercel project ls --scope posimais-projects --next 1774708857375 2>&1 | grep -i ","ok":true} +{"ts":"2026-04-04T17:19:23.510Z","tool":"Bash","target":"grep -n \"stripe\\|Stripe\\|webhook\\|STRIPE\" /c/Users/maita/posimai-project/server.","ok":true} +{"ts":"2026-04-04T17:19:29.130Z","tool":"Bash","target":"grep -n \"purchased_at\\|purchase\" /c/Users/maita/posimai-project/server.js | head","ok":true} +{"ts":"2026-04-04T17:19:30.727Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite/web/download && cat .vercel/p","ok":true} +{"ts":"2026-04-04T17:19:34.097Z","tool":"Bash","target":"grep -n \"^app.listen\\|^app.use.*router\\|buildRouter\\|PREFIX\" /c/Users/maita/posi","ok":true} +{"ts":"2026-04-04T17:19:36.433Z","tool":"Bash","target":"vercel project ls --scope posimais-projects --next 1774708857375 2>&1 | grep pon","ok":true} +{"ts":"2026-04-04T17:19:41.932Z","tool":"Bash","target":"vercel inspect ponshu-room-download.vercel.app --scope posimais-projects 2>&1 | ","ok":true} +{"ts":"2026-04-04T17:19:51.915Z","tool":"Bash","target":"VERCEL_TOKEN=$(cat ~/.vercel/auth.json 2>/dev/null | grep -o '\"token\":\"[^\"]*\"' |","ok":true} +{"ts":"2026-04-04T17:19:56.908Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-04T17:20:24.730Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-04T17:20:43.672Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-04T17:20:54.240Z","tool":"Bash","target":"grep -n \"auth/session/verify\" /c/Users/maita/posimai-project/server.js","ok":true} +{"ts":"2026-04-04T17:21:31.042Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-04T17:21:53.323Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project && bash deploy-server.sh 2>&1","ok":true} +{"ts":"2026-04-04T17:21:57.563Z","tool":"Bash","target":"ls ~/.config/vercel/ 2>/dev/null || ls /c/Users/maita/AppData/Roaming/vercel/ 2>","ok":true} +{"ts":"2026-04-04T17:22:00.097Z","tool":"Bash","target":"curl -s https://api.soar-enrich.com/brain/api/health && echo \"\"\ncurl -s -X POST ","ok":true} +{"ts":"2026-04-04T17:22:06.688Z","tool":"Bash","target":"# project.jsonをponshu-room-downloadプロジェクト用に一時書き換えてデプロイ\n# まず現在の内容をバックアップしてから別アプロー","ok":true} +{"ts":"2026-04-04T17:22:12.078Z","tool":"Bash","target":"vercel ls ponshu-room-download --scope posimais-projects 2>&1 | head -10","ok":true} +{"ts":"2026-04-04T17:22:21.039Z","tool":"Bash","target":"vercel inspect ponshu-room-download-1ayr7cedr-posimais-projects.vercel.app --sco","ok":true} +{"ts":"2026-04-04T17:22:23.588Z","tool":"Bash","target":"git add server.js && git commit -m \"$(cat <<'EOF'\nfeat: Stripe Webhook + purchas","ok":true} +{"ts":"2026-04-04T17:22:27.444Z","tool":"Bash","target":"VERCEL_TOKEN=$(cat /c/Users/maita/AppData/Local/vercel/auth.json 2>/dev/null | g","ok":true} +{"ts":"2026-04-04T17:22:32.897Z","tool":"Bash","target":"grep -n \"API_KEY\\|api_key\\|posimai_api_key\\|localStorage\\|API_BASE\\|soar-enrich\"","ok":true} +{"ts":"2026-04-04T17:22:40.068Z","tool":"Bash","target":"grep -n \"API_BASE\\|apiKey\\|getKey\\|Authorization\\|Bearer\\|fetch.*api\" /c/Users/m","ok":true} +{"ts":"2026-04-04T17:22:56.246Z","tool":"Bash","target":"grep -n \"api\\|fetch\\|Authorization\" /c/Users/maita/posimai-project/posimai-brain","ok":true} +{"ts":"2026-04-04T17:23:14.073Z","tool":"Bash","target":"grep -n \"posimai_api_key\\|API_KEY\\|headers\\|fetch(\" /c/Users/maita/posimai-proje","ok":true} +{"ts":"2026-04-04T17:23:19.663Z","tool":"Bash","target":"grep -rn \"posimai_api_key\\|API_KEY\\|fetch(\" /c/Users/maita/posimai-project/posim","ok":true} +{"ts":"2026-04-04T17:23:40.901Z","tool":"Edit","target":"storage.js","ok":true} +{"ts":"2026-04-04T17:23:51.918Z","tool":"Edit","target":"client.js","ok":true} +{"ts":"2026-04-04T17:23:56.945Z","tool":"Edit","target":"client.js","ok":true} +{"ts":"2026-04-04T17:24:06.941Z","tool":"Edit","target":"main.js","ok":true} +{"ts":"2026-04-04T17:24:22.968Z","tool":"Edit","target":"main.js","ok":true} +{"ts":"2026-04-04T17:24:29.944Z","tool":"Bash","target":"find /c/Users/maita -name \"*.json\" -path \"*vercel*\" 2>/dev/null | grep -v node_m","ok":true} +{"ts":"2026-04-04T17:24:30.005Z","tool":"Bash","target":"grep -rn \"posimai_session\\|localStorage.*token\\|localStorage.*session\\|setItem.*","ok":true} +{"ts":"2026-04-04T17:24:37.106Z","tool":"Edit","target":"storage.js","ok":true} +{"ts":"2026-04-04T17:24:50.452Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-brain && git add js/utils/storage.js j","ok":true} +{"ts":"2026-04-04T17:24:58.444Z","tool":"Bash","target":"# project.jsonをponshu-room-downloadに書き換えてデプロイ(後で元に戻す)\n# まずvercel link --yes でインタ","ok":true} +{"ts":"2026-04-04T17:25:01.739Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/ponshu_room_lite/web/.vercel/project.json","ok":true} +{"ts":"2026-04-04T17:25:06.760Z","tool":"Edit","target":"project.json","ok":true} +{"ts":"2026-04-04T17:25:18.919Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite/web/download && vercel --prod","ok":true} +{"ts":"2026-04-04T17:25:22.785Z","tool":"Bash","target":"curl -s https://ponshu-room-download.vercel.app/releases.json | grep -E \"version","ok":true} +{"ts":"2026-04-04T17:48:49.452Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && git tag stable-pre-bugfix ","ok":true} +{"ts":"2026-04-04T17:50:52.446Z","tool":"Bash","target":"grep -n \"\\![^=!]\" c:/Users/maita/posimai-project/ponshu_room_lite/lib/screens/so","ok":true} +{"ts":"2026-04-04T17:51:08.657Z","tool":"Edit","target":"soul_screen.dart","ok":true} +{"ts":"2026-04-04T17:51:37.848Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && flutter analyze 2>&1 | tai","ok":true} +{"ts":"2026-04-04T17:51:42.327Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && git add lib/screens/soul_s","ok":true} +{"ts":"2026-04-04T17:52:11.213Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-reader/\nls /c/Users/maita/posimai-proj","ok":true} +{"ts":"2026-04-04T17:52:17.926Z","tool":"Bash","target":"grep -n \"posimai_token\\|posimai_session\\|posimai_apikey\\|posimai_api_key\\|localS","ok":true} +{"ts":"2026-04-04T17:52:39.856Z","tool":"Bash","target":"grep -n \"posimai_api_key\\|API_KEY\\|API_BASE\\|soar-enrich\\|brain-save\\|Brain\" /c/","ok":true} +{"ts":"2026-04-04T17:53:01.913Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-04T17:53:14.195Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-04T17:53:19.463Z","tool":"Bash","target":"find \"/c/Users/maita/posimai-project/ponshu_room_lite\" -type f -name \".gitignore","ok":true} +{"ts":"2026-04-04T17:53:33.110Z","tool":"Bash","target":"wc -l /c/Users/maita/posimai-project/ponshu_room_lite/lib/**/*.dart | sort -rn |","ok":true} +{"ts":"2026-04-04T17:53:37.001Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-04T17:53:46.444Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-04T17:53:54.768Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-04T17:53:55.183Z","tool":"Bash","target":"find \"/c/Users/maita/posimai-project/ponshu_room_lite/lib\" -name \"*.dart\" -exec ","ok":true} +{"ts":"2026-04-04T17:54:02.649Z","tool":"Bash","target":"grep -r \"insecure\\|insecureSkipVerification\\|badCertificateCallback\\|HttpClient\"","ok":true} +{"ts":"2026-04-04T17:54:07.976Z","tool":"Bash","target":"grep -r \"debugPrint\\|debug\\|console\" \"/c/Users/maita/posimai-project/ponshu_room","ok":true} +{"ts":"2026-04-04T17:54:10.497Z","tool":"Bash","target":"cd \"/c/Users/maita/posimai-project/ponshu_room_lite\" && git status --short 2>/de","ok":true} +{"ts":"2026-04-04T17:54:10.782Z","tool":"Bash","target":"ls -la \"/c/Users/maita/posimai-project/ponshu_room_lite/.env\" \"/c/Users/maita/po","ok":true} +{"ts":"2026-04-04T17:54:17.857Z","tool":"Bash","target":"cd \"/c/Users/maita/posimai-project/ponshu_room_lite\" && git ls-files | grep -E \"","ok":true} +{"ts":"2026-04-04T17:54:19.996Z","tool":"Bash","target":"cd \"/c/Users/maita/posimai-project/ponshu_room_lite\" && git log --oneline -5 2>/","ok":true} +{"ts":"2026-04-04T17:54:24.870Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-reader && git add index.html && git co","ok":true} +{"ts":"2026-04-04T17:55:53.715Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -type f -name \"index.html\" | head -20","ok":true} +{"ts":"2026-04-04T17:56:06.644Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -name \"server.js\" -type f","ok":true} +{"ts":"2026-04-04T17:56:17.461Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -maxdepth 3 -name \".env*\" -type f | head -20","ok":true} +{"ts":"2026-04-04T17:56:24.440Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -maxdepth 3 -name \"vercel.json\" -type f","ok":true} +{"ts":"2026-04-04T17:56:45.371Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -name \"sw.js\" -type f","ok":true} +{"ts":"2026-04-04T17:56:56.165Z","tool":"Bash","target":"grep -r \"eval\\|Function\\|dangerouslySetInnerHTML\" /c/Users/maita/posimai-project","ok":true} +{"ts":"2026-04-04T17:57:00.051Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/posimai-dashboard -name \"*login*\" -o -name \"","ok":true} +{"ts":"2026-04-04T17:57:01.387Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/posimai-dashboard/src -type f -name \"*.tsx\" ","ok":true} +{"ts":"2026-04-04T17:57:03.490Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/posimai-dashboard/src -type f -name \"*.tsx\" ","ok":true} +{"ts":"2026-04-04T17:57:09.251Z","tool":"Bash","target":"grep -r \"redirect\\|replace\" /c/Users/maita/posimai-project/posimai-dashboard/src","ok":true} +{"ts":"2026-04-04T17:57:14.928Z","tool":"Bash","target":"grep -n \"\\.indexOf\\|\\.includes\\|substring\\|concat\" /c/Users/maita/posimai-projec","ok":true} +{"ts":"2026-04-04T17:57:17.828Z","tool":"Bash","target":"git log --all --oneline | grep -i \"secret\\|key\\|password\\|token\\|env\" | head -10","ok":true} +{"ts":"2026-04-04T17:57:24.394Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/.gitignore | head -30","ok":true} +{"ts":"2026-04-04T17:57:26.437Z","tool":"Bash","target":"git check-ignore \"posimai-brain/.env.local\" && echo \"✓ Properly ignored\" || echo","ok":true} +{"ts":"2026-04-04T17:57:52.216Z","tool":"Write","target":"project_ponshu_security.md","ok":true} +{"ts":"2026-04-04T17:58:04.205Z","tool":"Edit","target":"MEMORY.md","ok":true} +{"ts":"2026-04-04T17:58:32.170Z","tool":"Bash","target":"grep -n \"sig.match\\|tsStr\\|v1Sig\" /c/Users/maita/posimai-project/server.js","ok":true} +{"ts":"2026-04-04T17:58:33.858Z","tool":"Edit","target":"other_settings_section.dart","ok":true} +{"ts":"2026-04-04T17:58:39.590Z","tool":"Edit","target":"other_settings_section.dart","ok":true} +{"ts":"2026-04-04T17:58:42.194Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-04T17:58:48.958Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-04T17:59:05.990Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-04T17:59:18.130Z","tool":"Edit","target":"network_service.dart","ok":true} +{"ts":"2026-04-04T17:59:19.236Z","tool":"Bash","target":"grep -n \"function escH\\|function esc\\|escHtml\\|escapeHtml\" /c/Users/maita/posima","ok":true} +{"ts":"2026-04-04T17:59:23.270Z","tool":"Edit","target":"draft_service.dart","ok":true} +{"ts":"2026-04-04T17:59:28.225Z","tool":"Bash","target":"grep -n \"function markdownToHtml\\|function timeAgo\\|function showHistory\" /c/Use","ok":true} +{"ts":"2026-04-04T17:59:28.938Z","tool":"Edit","target":"analysis_cache_service.dart","ok":true} +{"ts":"2026-04-04T17:59:34.933Z","tool":"Edit","target":"display_mode_provider.dart","ok":true} +{"ts":"2026-04-04T17:59:36.616Z","tool":"Bash","target":"grep -n \"DOMPurify\\|dompurify\\|purify\" /c/Users/maita/posimai-project/posimai-re","ok":true} +{"ts":"2026-04-04T17:59:38.658Z","tool":"Edit","target":"theme_provider.dart","ok":true} +{"ts":"2026-04-04T17:59:46.932Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-04T17:59:54.882Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-04T17:59:56.135Z","tool":"Edit","target":"camera_screen.dart","ok":true} +{"ts":"2026-04-04T18:00:01.488Z","tool":"Edit","target":"sake_detail_screen.dart","ok":true} +{"ts":"2026-04-04T18:00:05.392Z","tool":"Edit","target":"sake_detail_screen.dart","ok":true} +{"ts":"2026-04-04T18:00:09.370Z","tool":"Edit","target":"sake_detail_screen.dart","ok":true} +{"ts":"2026-04-04T18:00:11.688Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-04T18:00:15.169Z","tool":"Edit","target":"home_screen.dart","ok":true} +{"ts":"2026-04-04T18:00:19.090Z","tool":"Edit","target":"pdf_preview_screen.dart","ok":true} +{"ts":"2026-04-04T18:00:23.228Z","tool":"Edit","target":"gemini_service.dart","ok":true} +{"ts":"2026-04-04T18:00:31.589Z","tool":"Edit","target":"gemini_service.dart","ok":true} +{"ts":"2026-04-04T18:00:35.115Z","tool":"Edit","target":"gemini_service.dart","ok":true} +{"ts":"2026-04-04T18:00:41.483Z","tool":"Edit","target":"gemini_service.dart","ok":true} +{"ts":"2026-04-04T18:00:45.334Z","tool":"Edit","target":"menu_providers.dart","ok":true} +{"ts":"2026-04-04T18:00:52.771Z","tool":"Edit","target":"pending_analysis_banner.dart","ok":true} +{"ts":"2026-04-04T18:00:56.091Z","tool":"Bash","target":"bash deploy-server.sh 2>&1 | tail -15","ok":true} +{"ts":"2026-04-04T18:01:01.549Z","tool":"Edit","target":"sake_detail_specs.dart","ok":true} +{"ts":"2026-04-04T18:01:06.828Z","tool":"Edit","target":"dev_menu_screen.dart","ok":true} +{"ts":"2026-04-04T18:01:10.654Z","tool":"Bash","target":"git add server.js && git commit -m \"$(cat <<'EOF'\nfix: security hardening round ","ok":true} +{"ts":"2026-04-04T18:01:15.209Z","tool":"Edit","target":"sake_item.dart","ok":true} +{"ts":"2026-04-04T18:01:18.914Z","tool":"Edit","target":"sake_item.dart","ok":true} +{"ts":"2026-04-04T18:01:23.582Z","tool":"Edit","target":"sake_item.dart","ok":true} +{"ts":"2026-04-04T18:01:30.286Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-dashboard && git add src/app/auth/veri","ok":true} +{"ts":"2026-04-04T18:01:31.519Z","tool":"Edit","target":"sake_item.dart","ok":true} +{"ts":"2026-04-04T18:01:48.210Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-reader && git add index.html && git co","ok":true} +{"ts":"2026-04-04T18:01:55.439Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && flutter analyze 2>&1 | tai","ok":true} +{"ts":"2026-04-04T18:01:59.717Z","tool":"Bash","target":"grep -n \"追加\\|削除\\|add.*feed\\|remove.*feed\\|addSource\\|removeSource\\|サイドバー\\|sideba","ok":true} +{"ts":"2026-04-04T18:02:01.855Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && git add lib/ && git commit","ok":true} +{"ts":"2026-04-04T18:02:03.730Z","tool":"Bash","target":"grep -n \"未実装\\|TODO\\|FIXME\\|準備中\\|addMedia\\|editMedia\\|feed.*url\\|rss.*add\\|新しいフィー","ok":true} +{"ts":"2026-04-04T18:02:10.689Z","tool":"Bash","target":"grep -n \"addMediaForm\\|addMediaModal\\|feed_url\\|削除\\|delete.*media\\|removeMedia\" ","ok":true} +{"ts":"2026-04-04T22:25:55.063Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && git log --oneline -5","ok":true} +{"ts":"2026-04-04T22:26:13.688Z","tool":"Edit","target":"display_settings_section.dart","ok":true} +{"ts":"2026-04-04T22:26:36.790Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && flutter analyze 2>&1 | tai","ok":true} +{"ts":"2026-04-04T22:26:42.728Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && git add lib/widgets/settin","ok":true} +{"ts":"2026-04-04T22:27:16.612Z","tool":"Bash","target":"wc -l c:/Users/maita/posimai-project/server.js","ok":true} +{"ts":"2026-04-04T22:29:11.855Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && git log --oneline b6163e8~","ok":true} +{"ts":"2026-04-04T22:29:33.467Z","tool":"Bash","target":"grep -n \"feed\" c:/Users/maita/posimai-project/server.js | head -50","ok":true} +{"ts":"2026-04-04T22:29:33.856Z","tool":"Bash","target":"grep -n \"feed\" c:/Users/maita/posimai-project/posimai-feed/index.html | head -60","ok":true} +{"ts":"2026-04-04T22:29:53.566Z","tool":"Bash","target":"ls ~/.ssh/","ok":true} +{"ts":"2026-04-04T22:30:00.413Z","tool":"Bash","target":"cat ~/.ssh/config","ok":true} +{"ts":"2026-04-04T22:30:08.630Z","tool":"Bash","target":"ssh soar-vps \"docker ps --format '{{.Names}}'\" 2>&1","ok":true} +{"ts":"2026-04-04T22:30:16.746Z","tool":"Bash","target":"ssh soar-vps \"docker exec posimai-db-1 psql -U posimai -l\" 2>&1","ok":true} +{"ts":"2026-04-04T22:30:23.371Z","tool":"Bash","target":"ssh soar-vps \"docker exec posimai-db-1 psql -U posimai -d posimai_brain -c '\\dt ","ok":true} +{"ts":"2026-04-04T22:30:24.168Z","tool":"Edit","target":"pubspec.yaml","ok":true} +{"ts":"2026-04-04T22:30:29.573Z","tool":"Bash","target":"ssh soar-vps \"docker exec posimai-db-1 psql -U posimai -d posimai_brain -c '\\d f","ok":true} +{"ts":"2026-04-04T22:30:33.389Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && git add pubspec.yaml && gi","ok":true} +{"ts":"2026-04-04T22:30:37.902Z","tool":"Bash","target":"grep -n \"DATABASE_URL\\|posimai_brain\\|pool\" c:/Users/maita/posimai-project/serve","ok":true} +{"ts":"2026-04-04T22:30:39.006Z","tool":"Bash","target":"grep -n \"API_URL\\|Authorization\\|posimai_token\\|posimai_api_key\" c:/Users/maita/","ok":true} +{"ts":"2026-04-04T22:30:41.227Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && bash build_consumer.sh 2>&","ok":true} +{"ts":"2026-04-04T22:30:45.581Z","tool":"Bash","target":"grep -n \"API_KEY\\|API_URL\" c:/Users/maita/posimai-project/posimai-feed/index.htm","ok":true} +{"ts":"2026-04-04T22:30:55.163Z","tool":"Bash","target":"wc -l c:/Users/maita/posimai-project/posimai-feed/index.html","ok":true} +{"ts":"2026-04-04T22:31:15.560Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-04T22:31:23.951Z","tool":"Bash","target":"grep -n \"let filteredArticles\\|let savedUrls\\|async function sync\" c:/Users/mait","ok":true} +{"ts":"2026-04-04T22:31:30.721Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-04T22:31:35.941Z","tool":"Bash","target":"grep -n \"const API_KEY = localStorage.getItem('posimai_api_key')\" c:/Users/maita","ok":true} +{"ts":"2026-04-04T22:31:40.044Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-04T22:32:00.917Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-04T22:32:05.098Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-04T22:32:18.231Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-04T22:32:25.667Z","tool":"Bash","target":"grep -n \"posimai_api_key\\|getAuthToken\\|posimai_token\" c:/Users/maita/posimai-pr","ok":true} +{"ts":"2026-04-04T22:32:30.248Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-feed && git add index.html && git comm","ok":true} +{"ts":"2026-04-04T22:32:39.178Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-feed && npm run deploy 2>&1","ok":true} +{"ts":"2026-04-04T22:33:28.928Z","tool":"Bash","target":"tail -8 \"C:\\Users\\maita\\AppData\\Local\\Temp\\claude\\c--Users-maita-posimai-project","ok":true} +{"ts":"2026-04-04T22:33:37.579Z","tool":"Bash","target":"GITEA_PASS=$(git credential fill <<< $'protocol=http\\nhost=100.76.7.3:3000' | gr","ok":true} +{"ts":"2026-04-04T22:33:54.163Z","tool":"Bash","target":"GITEA_PASS=$(git credential fill <<< $'protocol=http\\nhost=100.76.7.3:3000' | gr","ok":true} +{"ts":"2026-04-04T22:34:10.763Z","tool":"Edit","target":"releases.json","ok":true} +{"ts":"2026-04-04T22:34:25.356Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && git add web/download/relea","ok":true} +{"ts":"2026-04-04T22:34:28.417Z","tool":"Bash","target":"curl -s https://ponshu-room-download.vercel.app/releases.json | grep -E \"version","ok":true} +{"ts":"2026-04-04T22:34:35.613Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && git push gitea main 2>&1","ok":true} +{"ts":"2026-04-05T00:49:55.015Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-05T00:50:04.156Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-05T00:50:16.650Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && git add web/download/index","ok":true} +{"ts":"2026-04-05T00:50:30.663Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite/web/download && vercel --prod","ok":true} +{"ts":"2026-04-05T00:50:34.174Z","tool":"Bash","target":"curl -s https://ponshu-room-download.vercel.app/ | grep -o 'onclick=\"selectUser.","ok":true} +{"ts":"2026-04-05T00:50:37.249Z","tool":"Bash","target":"curl -s https://ponshu-room-download.vercel.app/ | grep -o '>Mai<\\|>Eiji<'","ok":true} +{"ts":"2026-04-05T00:50:44.913Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && git push gitea main 2>&1","ok":true} +{"ts":"2026-04-05T00:51:06.915Z","tool":"Bash","target":"ssh soar-vps \"docker logs posimai-api-1 --tail 30 2>&1\"","ok":true} +{"ts":"2026-04-05T00:51:15.001Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-05T00:51:41.766Z","tool":"Bash","target":"bash c:/Users/maita/posimai-project/deploy-server.sh 2>&1","ok":true} +{"ts":"2026-04-05T01:01:59.246Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-feed/api/","ok":true} +{"ts":"2026-04-05T01:01:59.251Z","tool":"Bash","target":"grep -n \"注目\\|detect\\|name.*feed\\|category.*feed\\|sidebar\" c:/Users/maita/posimai","ok":true} +{"ts":"2026-04-05T01:02:43.103Z","tool":"Bash","target":"ssh soar-vps \"docker exec posimai-db-1 psql -U posimai -d posimai_brain -c '\\d f","ok":true} +{"ts":"2026-04-05T01:09:15.499Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-store/ && echo \"---\" && head -50 c:/Us","ok":true} +{"ts":"2026-04-05T01:09:19.892Z","tool":"Bash","target":"grep -n \"stripe\\|payment\\|price\\|¥\\|500\\|plan\\|PLACEHOLDER\\|TODO\\|href=\\|onclick","ok":true} +{"ts":"2026-04-05T01:09:25.809Z","tool":"Bash","target":"grep -n \"stripe\\|payment\\|PLACEHOLDER\\|TODO\\|buyBtn\\|freeBtn\" c:/Users/maita/pos","ok":true} +{"ts":"2026-04-05T01:09:30.073Z","tool":"Bash","target":"grep -n \"stripe\\|payment\\|PLACEHOLDER\\|TODO\\|buyBtn\\|freeBtn\\|legal\\|tokusho\" c:","ok":true} +{"ts":"2026-04-05T01:09:34.366Z","tool":"Bash","target":"grep -rn \"販売事業者\\|代表者\\|PLACEHOLDER\\|記入\" c:/Users/maita/posimai-project/posimai-da","ok":true} +{"ts":"2026-04-05T01:09:38.794Z","tool":"Bash","target":"cat c:/Users/maita/posimai-project/posimai-dashboard/src/app/legal/tokusho/page.","ok":true} +{"ts":"2026-04-05T01:10:54.174Z","tool":"Edit","target":"soul_screen.dart","ok":true} +{"ts":"2026-04-05T01:10:57.873Z","tool":"Edit","target":"soul_screen.dart","ok":true} +{"ts":"2026-04-05T01:11:16.289Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/ponshu_room_lite && flutter analyze lib/screen","ok":true} +{"ts":"2026-04-05T01:11:19.660Z","tool":"Bash","target":"git diff --stat","ok":true} +{"ts":"2026-04-05T01:11:45.221Z","tool":"Write","target":"build_4_apks.sh","ok":true} +{"ts":"2026-04-05T01:11:49.466Z","tool":"Bash","target":"git add lib/screens/soul_screen.dart build_4_apks.sh && git status","ok":true} +{"ts":"2026-04-05T01:11:54.740Z","tool":"Bash","target":"git commit -m \"$(cat <<'EOF'\nfeat: hide business mode toggle in consumer APK, up","ok":true} +{"ts":"2026-04-05T01:12:37.512Z","tool":"Bash","target":"ssh soar-vps \"docker exec posimai-api-1 cat /app/package.json\" 2>&1","ok":true} +{"ts":"2026-04-05T01:12:40.567Z","tool":"Bash","target":"ssh soar-vps \"docker exec posimai-db-1 psql -U posimai -d posimai_brain -c 'SELE","ok":true} +{"ts":"2026-04-05T01:12:55.466Z","tool":"Bash","target":"cat c:/Users/maita/posimai-project/docker-compose.yml | grep -A5 \"api\"","ok":true} +{"ts":"2026-04-05T01:12:55.825Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/ | grep -i docker","ok":true} +{"ts":"2026-04-05T01:12:59.363Z","tool":"Bash","target":"ssh soar-vps \"find /root /home -name 'docker-compose.yml' 2>/dev/null | head -5\"","ok":true} +{"ts":"2026-04-05T01:13:11.572Z","tool":"Bash","target":"ssh soar-vps \"find / -name 'docker-compose.yml' -not -path '*/proc/*' 2>/dev/nul","ok":true} +{"ts":"2026-04-05T01:13:14.476Z","tool":"Bash","target":"ssh soar-vps \"cat /opt/posimai/docker-compose.yml\"","ok":true} +{"ts":"2026-04-05T01:13:15.155Z","tool":"Bash","target":"ssh soar-vps \"ls /opt/posimai/\"","ok":true} +{"ts":"2026-04-05T01:13:40.248Z","tool":"Bash","target":"ssh soar-vps \"docker exec posimai-db-1 psql -U posimai -d posimai_brain -c 'SELE","ok":true} +{"ts":"2026-04-05T01:14:28.513Z","tool":"Bash","target":"ssh soar-vps \"cat /opt/posimai/package.json\"","ok":true} +{"ts":"2026-04-05T01:14:33.056Z","tool":"Bash","target":"ssh soar-vps \"cat > /opt/posimai/package.json << 'EOF'\n{\n \\\"name\\\": \\\"posimai-a","ok":true} +{"ts":"2026-04-05T01:14:38.633Z","tool":"Bash","target":"grep -n \"Schema ready\\|listen\\|startServer\\|app\\.listen\\|r\\.get.*health\\|module\\","ok":true} +{"ts":"2026-04-05T01:14:50.460Z","tool":"Bash","target":"ssh soar-vps \"docker exec posimai-db-1 psql -U posimai -d posimai_brain -c \\\"SEL","ok":true} +{"ts":"2026-04-05T01:14:57.563Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-05T01:15:05.738Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-05T01:15:26.685Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-05T01:15:43.806Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-05T01:15:58.535Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-05T01:16:29.037Z","tool":"Bash","target":"grep -n \"loadFeedData\\|async function loadFeed\" c:/Users/maita/posimai-project/p","ok":true} +{"ts":"2026-04-05T01:16:41.340Z","tool":"Bash","target":"node -e \"\nconst fs = require('fs');\nconst content = fs.readFileSync('c:/Users/ma","ok":true} +{"ts":"2026-04-05T01:17:00.555Z","tool":"Bash","target":"node -e \"\nconst fs = require('fs');\nlet content = fs.readFileSync('c:/Users/mait","ok":true} +{"ts":"2026-04-05T01:17:17.925Z","tool":"Write","target":"replace_loadfeed.js","ok":true} +{"ts":"2026-04-05T03:27:19.163Z","tool":"Bash","target":"node c:/tmp/replace_loadfeed.js","ok":true} +{"ts":"2026-04-05T03:27:21.939Z","tool":"Bash","target":"grep -n \"loadFeedData\\|/api/feed\\|/feed/articles\" c:/Users/maita/posimai-project","ok":true} +{"ts":"2026-04-05T03:27:29.185Z","tool":"Bash","target":"grep -n \"deleteMedia\\|nav-item-delete\\|nav-item-actions\" c:/Users/maita/posimai-","ok":true} +{"ts":"2026-04-05T03:27:46.533Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-05T03:27:57.589Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-05T03:28:08.958Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-05T03:28:28.844Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-05T03:28:36.148Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-05T03:28:48.875Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-05T03:28:55.203Z","tool":"Bash","target":"ssh soar-vps \"docker exec posimai-db-1 psql -U posimai -d posimai_brain -c \\\"UPD","ok":true} +{"ts":"2026-04-05T03:29:16.003Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && bash deploy-server.sh 2>&1","ok":true} +{"ts":"2026-04-05T03:29:35.041Z","tool":"Bash","target":"sleep 15 && ssh soar-vps \"docker logs posimai-api-1 --tail 10 2>&1\"","ok":true} +{"ts":"2026-04-05T03:29:45.406Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-feed && git add index.html && git comm","ok":true} +{"ts":"2026-04-05T03:29:48.907Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git add server.js && git commit -m \"feat: a","ok":true} +{"ts":"2026-04-05T03:29:53.884Z","tool":"Bash","target":"ssh soar-vps \"docker exec posimai-db-1 psql -U posimai -d posimai_brain -c \\\"DEL","ok":true} +{"ts":"2026-04-05T03:30:00.258Z","tool":"Bash","target":"ssh soar-vps \"docker exec posimai-db-1 psql -U posimai -d posimai_brain -c 'SELE","ok":true} +{"ts":"2026-04-05T03:56:07.658Z","tool":"Bash","target":"grep -n \"font-size\\|font-weight\\|stroke-width\\|lucide\\|--font\\|letter-spacing\" c","ok":true} +{"ts":"2026-04-05T03:56:09.090Z","tool":"Bash","target":"grep -n \"font-size\\|font-weight\\|stroke-width\\|lucide\\|--font\\|letter-spacing\" c","ok":true} +{"ts":"2026-04-05T03:56:12.428Z","tool":"Bash","target":"grep -n \"font-family\\|body {\" c:/Users/maita/posimai-project/posimai-brain/index","ok":true} +{"ts":"2026-04-05T03:56:13.416Z","tool":"Bash","target":"grep -n \"font-family\\|body {\" c:/Users/maita/posimai-project/posimai-feed/index.","ok":true} +{"ts":"2026-04-05T03:56:16.377Z","tool":"Bash","target":"grep -n \"font-family\\|Inter\\|Noto\\|system-ui\" c:/Users/maita/posimai-project/pos","ok":true} +{"ts":"2026-04-05T03:56:17.469Z","tool":"Bash","target":"grep -n \"stroke-width\\|createIcons\\|lucide\\.create\" c:/Users/maita/posimai-proje","ok":true} +{"ts":"2026-04-05T03:56:20.633Z","tool":"Bash","target":"grep -n \"stroke-width\\|createIcons\\|lucide\\.create\" c:/Users/maita/posimai-proje","ok":true} +{"ts":"2026-04-05T03:56:21.510Z","tool":"Bash","target":"grep -n \"nav-item\\b\" c:/Users/maita/posimai-project/posimai-feed/index.html | he","ok":true} +{"ts":"2026-04-05T03:56:24.985Z","tool":"Bash","target":"grep -n \"\\.nav-item\" c:/Users/maita/posimai-project/posimai-feed/index.html | he","ok":true} +{"ts":"2026-04-05T03:56:33.878Z","tool":"Bash","target":"grep -n \"\\.nav-item {\" c:/Users/maita/posimai-project/posimai-brain/index.html","ok":true} +{"ts":"2026-04-05T03:56:35.062Z","tool":"Bash","target":"grep -n \"article-title\\|article-source\\|article-card\\|font-size.*px\" c:/Users/ma","ok":true} +{"ts":"2026-04-05T04:15:50.469Z","tool":"Bash","target":"grep -rn \"fonts.googleapis\\|font-family.*Inter\\|font-family.*system\" c:/Users/ma","ok":true} +{"ts":"2026-04-05T04:16:09.383Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-05T04:16:15.567Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-05T04:16:24.893Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-05T04:16:29.490Z","tool":"Bash","target":"grep -n \"stroke-width:2\\|stroke-width: 2\" c:/Users/maita/posimai-project/posimai","ok":true} +{"ts":"2026-04-05T04:16:36.838Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-05T04:16:40.545Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-05T04:16:45.453Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-05T04:16:49.833Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-05T04:17:04.015Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-05T04:17:08.336Z","tool":"Bash","target":"grep -n \"favicon\\|article-favicon\\|source-icon\" c:/Users/maita/posimai-project/p","ok":true} +{"ts":"2026-04-05T04:17:15.036Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-05T04:17:25.270Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-feed && git add index.html && git comm","ok":true} +{"ts":"2026-04-05T04:19:12.224Z","tool":"Bash","target":"find c:/Users/maita/posimai-project -name \"*.apk\" -o -name \"*download*\" -o -name","ok":true} +{"ts":"2026-04-05T04:19:16.191Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-widget-dl/\ncat c:/Users/maita/posimai-","ok":true} +{"ts":"2026-04-05T04:19:19.577Z","tool":"Bash","target":"ls -la c:/Users/maita/posimai-project/posimai_widget/build/app/outputs/flutter-a","ok":true} +{"ts":"2026-04-05T04:26:48.229Z","tool":"Edit","target":"level_title_card.dart","ok":true} +{"ts":"2026-04-05T04:31:47.734Z","tool":"Edit","target":"soul_screen.dart","ok":true} +{"ts":"2026-04-05T04:31:55.030Z","tool":"Edit","target":"soul_screen.dart","ok":true} +{"ts":"2026-04-05T04:32:08.634Z","tool":"Edit","target":"sommelier_screen.dart","ok":true} +{"ts":"2026-04-05T04:32:18.978Z","tool":"Edit","target":"sommelier_screen.dart","ok":true} +{"ts":"2026-04-05T04:32:25.308Z","tool":"Edit","target":"sommelier_screen.dart","ok":true} +{"ts":"2026-04-05T04:32:43.645Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/ponshu_room_lite && flutter analyze lib/screen","ok":true} +{"ts":"2026-04-05T04:32:52.292Z","tool":"Bash","target":"git add lib/screens/soul_screen.dart lib/screens/features/sommelier_screen.dart ","ok":true} +{"ts":"2026-04-05T04:32:57.555Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/ponshu_room_lite/lib/widgets/common/","ok":true} +{"ts":"2026-04-05T04:33:03.289Z","tool":"Write","target":"pressable.dart","ok":true} +{"ts":"2026-04-05T04:33:12.909Z","tool":"Edit","target":"level_title_card.dart","ok":true} +{"ts":"2026-04-05T04:33:20.714Z","tool":"Edit","target":"level_title_card.dart","ok":true} +{"ts":"2026-04-05T04:33:27.647Z","tool":"Edit","target":"level_title_card.dart","ok":true} +{"ts":"2026-04-05T04:33:35.439Z","tool":"Edit","target":"level_title_card.dart","ok":true} +{"ts":"2026-04-05T04:33:40.589Z","tool":"Edit","target":"level_title_card.dart","ok":true} +{"ts":"2026-04-05T04:33:49.626Z","tool":"Edit","target":"soul_screen.dart","ok":true} +{"ts":"2026-04-05T04:33:58.399Z","tool":"Edit","target":"soul_screen.dart","ok":true} +{"ts":"2026-04-05T04:34:07.438Z","tool":"Edit","target":"sommelier_screen.dart","ok":true} +{"ts":"2026-04-05T04:34:20.453Z","tool":"Edit","target":"sommelier_screen.dart","ok":true} +{"ts":"2026-04-05T04:34:51.175Z","tool":"Write","target":"patch_feed_css.js","ok":true} +{"ts":"2026-04-05T04:34:55.499Z","tool":"Bash","target":"flutter analyze lib/screens/soul_screen.dart lib/screens/features/sommelier_scre","ok":true} +{"ts":"2026-04-05T04:34:56.434Z","tool":"Bash","target":"node c:/tmp/patch_feed_css.js","ok":true} +{"ts":"2026-04-05T04:35:00.593Z","tool":"Bash","target":"grep -n \"sidebar-w: 220\\|margin-left: 220\\|filter-bar.*display.*none\\|article-ca","ok":true} +{"ts":"2026-04-05T04:35:03.456Z","tool":"Bash","target":"git add lib/widgets/common/pressable.dart lib/widgets/gamification/level_title_c","ok":true} +{"ts":"2026-04-05T04:35:05.733Z","tool":"Bash","target":"grep -n \"filter-bar.*none\\|display: none\" c:/Users/maita/posimai-project/posimai","ok":true} +{"ts":"2026-04-05T04:35:19.747Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-feed && git add index.html && git comm","ok":true} +{"ts":"2026-04-05T04:39:38.431Z","tool":"Bash","target":"bash build_consumer.sh 2>&1 | tail -30","ok":true} +{"ts":"2026-04-05T04:39:42.299Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/ponshu_room_lite/web/download/releases.json","ok":true} +{"ts":"2026-04-05T04:39:47.204Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/ponshu_room_lite/pubspec.yaml | grep \"^versio","ok":true} +{"ts":"2026-04-05T04:39:50.202Z","tool":"Edit","target":"pubspec.yaml","ok":true} +{"ts":"2026-04-05T04:42:14.793Z","tool":"Bash","target":"bash build_consumer.sh 2>&1 | tail -15","ok":true} +{"ts":"2026-04-05T04:42:36.351Z","tool":"Bash","target":"cat ~/.netrc 2>/dev/null | head -10; echo \"---\"; git remote -v | head -4","ok":true} +{"ts":"2026-04-05T04:42:52.975Z","tool":"Bash","target":"GITEA_URL=\"http://100.76.7.3:3000\"\nREPO=\"mai/ponshu-room-lite\"\n\nCREDS=$(git cred","ok":true} +{"ts":"2026-04-05T04:42:58.003Z","tool":"Bash","target":"GITEA_URL=\"http://100.76.7.3:3000\"\nREPO=\"mai/ponshu-room-lite\"\nTAG=\"v1.0.19\"\n\nCR","ok":true} +{"ts":"2026-04-05T04:43:05.935Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/ponshu_room_lite\ngit tag -f \"v1.0.19\" HEAD\ngit","ok":true} +{"ts":"2026-04-05T04:43:13.329Z","tool":"Bash","target":"GITEA_URL=\"http://100.76.7.3:3000\"\nREPO=\"mai/ponshu-room-lite\"\nTAG=\"v1.0.19\"\n\nCR","ok":true} +{"ts":"2026-04-05T04:43:29.283Z","tool":"Bash","target":"GITEA_URL=\"http://100.76.7.3:3000\"\nREPO=\"mai/ponshu-room-lite\"\nTAG=\"v1.0.19\"\n\nCR","ok":true} +{"ts":"2026-04-05T04:43:42.102Z","tool":"Bash","target":"GITEA_URL=\"http://100.76.7.3:3000\"\nREPO=\"mai/ponshu-room-lite\"\nCREDS=$(git crede","ok":true} +{"ts":"2026-04-05T04:43:48.762Z","tool":"Bash","target":"GITEA_URL=\"http://100.76.7.3:3000\"\nREPO=\"mai/ponshu-room-lite\"\nCREDS=$(git crede","ok":true} +{"ts":"2026-04-05T04:44:07.718Z","tool":"Bash","target":"GITEA_URL=\"http://100.76.7.3:3000\"\nREPO=\"mai/ponshu-room-lite\"\nRELEASE_ID=8\nTAG=","ok":true} +{"ts":"2026-04-05T04:44:15.494Z","tool":"Write","target":"releases.json","ok":true} +{"ts":"2026-04-05T04:44:26.121Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/ponshu_room_lite\ngit add pubspec.yaml web/down","ok":true} +{"ts":"2026-04-05T04:44:39.125Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/ponshu_room_lite/web/download && vercel --yes ","ok":true} +{"ts":"2026-04-05T04:44:49.462Z","tool":"Bash","target":"vercel --prod --yes 2>&1 | tail -6","ok":true} +{"ts":"2026-04-05T05:00:03.603Z","tool":"Bash","target":"grep -n \"stripe\\|STRIPE\\|webhook\" c:/Users/maita/posimai-project/server.js | hea","ok":true} +{"ts":"2026-04-05T05:00:12.672Z","tool":"Bash","target":"sed -n '2800,2900p' c:/Users/maita/posimai-project/server.js","ok":true} +{"ts":"2026-04-05T05:00:22.522Z","tool":"Bash","target":"ssh soar-vps \"sed -i '/GITHUB_CLIENT_SECRET=.*/a\\ - STRIPE_WEBHOOK_SECRET=w","ok":true} +{"ts":"2026-04-05T05:00:31.062Z","tool":"Bash","target":"grep -n \"stripe_session_id\\|purchased_at\\|ADD COLUMN IF NOT EXISTS\" c:/Users/mai","ok":true} +{"ts":"2026-04-05T05:00:38.984Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-05T05:00:52.238Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-05T05:01:03.467Z","tool":"Bash","target":"grep -n 'buyBtn\\|href=\"#\"' c:/Users/maita/posimai-project/posimai-store/index.ht","ok":true} +{"ts":"2026-04-05T05:01:17.859Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-05T05:01:23.402Z","tool":"Edit","target":"index-b.html","ok":true} +{"ts":"2026-04-05T05:01:28.778Z","tool":"Edit","target":"index-c.html","ok":true} +{"ts":"2026-04-05T05:01:39.778Z","tool":"Bash","target":"ssh soar-vps \"docker ps --format '{{.Names}}\\t{{.Status}}' && echo '---' && curl","ok":true} +{"ts":"2026-04-05T05:01:44.362Z","tool":"Bash","target":"ssh soar-vps \"docker logs posimai-api-1 --tail 30 2>&1\"","ok":true} +{"ts":"2026-04-05T05:01:52.559Z","tool":"Bash","target":"grep -n \"Posimai API\\|soar-enrich\\|health\\|vps\" c:/Users/maita/posimai-project/p","ok":true} +{"ts":"2026-04-05T05:01:57.435Z","tool":"Bash","target":"grep -rn \"Posimai API\\|api\\.soar-enrich\\|health\" c:/Users/maita/posimai-project/","ok":true} +{"ts":"2026-04-05T05:01:59.174Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git add server.js && git commit -m \"feat: s","ok":true} +{"ts":"2026-04-05T05:02:06.268Z","tool":"Bash","target":"grep -n \"isAllowedOrigin\\|CORS not allowed\\|origin.*null\\|if.*!origin\" c:/Users/","ok":true} +{"ts":"2026-04-05T05:02:08.387Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-store && git add index.html index-b.ht","ok":true} +{"ts":"2026-04-05T05:02:19.457Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-05T05:02:48.298Z","tool":"Bash","target":"bash c:/Users/maita/posimai-project/deploy-server.sh 2>&1","ok":true} +{"ts":"2026-04-05T05:02:52.124Z","tool":"Bash","target":"ssh soar-vps \"curl -s http://localhost:8090/api/health\" 2>&1","ok":true} +{"ts":"2026-04-05T05:02:55.828Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git add server.js && git commit -m \"fix: al","ok":true} +{"ts":"2026-04-05T05:05:50.688Z","tool":"Bash","target":"cat c:/Users/maita/posimai-project/posimai-store/index-c.html | grep -n \"buyBtn\\","ok":true} +{"ts":"2026-04-05T05:06:05.378Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-store && git diff HEAD index.html inde","ok":true} +{"ts":"2026-04-05T05:06:10.467Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-store && git log --oneline -3 && git s","ok":true} +{"ts":"2026-04-05T05:06:14.451Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-store && git remote -v","ok":true} +{"ts":"2026-04-05T05:06:21.699Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-store && git push gitea main && git pu","ok":true} +{"ts":"2026-04-05T05:15:58.187Z","tool":"Bash","target":"wc -l c:/Users/maita/posimai-project/posimai-store/index-c.html && grep -n \"&1 | grep -i 'stripe\\|webhook\\|premium","ok":true} +{"ts":"2026-04-05T05:19:38.231Z","tool":"Bash","target":"grep -n \"article-card\\|article-title\\|article-meta\\|article-source\\|save\\|bookma","ok":true} +{"ts":"2026-04-05T05:19:39.711Z","tool":"Bash","target":"grep -n \"article-card\\|article-title\\|article-meta\\|favicon\\|save\\|bookmark\\|bra","ok":true} +{"ts":"2026-04-05T05:19:40.849Z","tool":"Bash","target":"grep -n \"article\\|post-card\\|feed-item\\|save\\|bookmark\\|brain\\|Brain\" c:/Users/m","ok":true} +{"ts":"2026-04-05T05:19:45.230Z","tool":"Bash","target":"grep -n \"article-card\\|\\.card\\|item-row\\|list-item\\|save\\|bookmark\\|brain\\|Brain","ok":true} +{"ts":"2026-04-05T05:19:45.990Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/ | grep -i \"posimai\\|brief\\|station\\|atlas\"","ok":true} +{"ts":"2026-04-05T05:19:49.697Z","tool":"Bash","target":"grep -n \"article\\|card\\|item\\|save\\|bookmark\\|Brain\\|favicon\" c:/Users/maita/pos","ok":true} +{"ts":"2026-04-05T05:19:50.782Z","tool":"Bash","target":"grep -n \"article\\|card\\|item\\|save\\|bookmark\\|Brain\\|favicon\" c:/Users/maita/pos","ok":true} +{"ts":"2026-04-05T05:19:55.285Z","tool":"Bash","target":"# Brainの記事カードHTML構造を確認\ngrep -n \"article-card\\|article-item\\|renderArticle\\|inner","ok":true} +{"ts":"2026-04-05T05:19:56.639Z","tool":"Bash","target":"grep -n \"renderArticle\\|article.*innerHTML\\|article.*html\\|favicon\\|domain\\|book","ok":true} +{"ts":"2026-04-05T05:20:05.249Z","tool":"Bash","target":"# Togetherの投稿カード構造\ngrep -n \"post-card\\|feed-card\\|share.*card\\|renderFeed\\|rende","ok":true} +{"ts":"2026-04-05T05:20:06.826Z","tool":"Bash","target":"grep -n \"article-link-row\\|article-link-title\\|article-favicon\\|article-footer\\|","ok":true} +{"ts":"2026-04-05T05:20:07.684Z","tool":"Bash","target":"ssh soar-vps \"cd /opt/posimai && docker compose up -d --force-recreate api && sl","ok":true} +{"ts":"2026-04-05T05:20:15.984Z","tool":"Bash","target":"# Brainのarticle-itemのCSS確認\ngrep -n \"article-item\\|article-favicon\\|article-body\\","ok":true} +{"ts":"2026-04-05T05:20:19.255Z","tool":"Edit","target":"sw.js","ok":true} +{"ts":"2026-04-05T05:20:21.599Z","tool":"Bash","target":"grep -n \"\\.article-item\\|\\.article-favicon\\|\\.article-body\\|\\.article-title\\|\\.a","ok":true} +{"ts":"2026-04-05T05:20:24.988Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-brain/","ok":true} +{"ts":"2026-04-05T05:20:25.328Z","tool":"Bash","target":"grep -rn \"\\.article-item\\|\\.article-favicon\\|\\.article-body\\|\\.article-action\\|\\","ok":true} +{"ts":"2026-04-05T05:20:33.567Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-store && git add sw.js && git commit -","ok":true} +{"ts":"2026-04-05T05:29:58.874Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/ponshu_room_lite && git log --oneline -8","ok":true} +{"ts":"2026-04-05T05:30:03.680Z","tool":"Bash","target":"grep -n \"ProLocked\\|pro_locked\\|isProVersion\\|IS_PRO\" /c/Users/maita/posimai-pro","ok":true} +{"ts":"2026-04-05T05:30:09.094Z","tool":"Bash","target":"grep -rn \"ProLocked\\|pro_locked\\|Pro版限定\" /c/Users/maita/posimai-project/ponshu_r","ok":true} +{"ts":"2026-04-05T05:30:23.203Z","tool":"Bash","target":"grep -n \"ProLocked\\|pro_locked\\|isProVersion\\|IS_PRO\\|isPro\" /c/Users/maita/posi","ok":true} +{"ts":"2026-04-05T05:30:59.937Z","tool":"Bash","target":"grep -n \"SakeMbtiStampSection\\|mbti_stamp\" /c/Users/maita/posimai-project/ponshu","ok":true} +{"ts":"2026-04-05T05:31:10.649Z","tool":"Bash","target":"grep -n \"isProVersion\\|main.dart\" /c/Users/maita/posimai-project/ponshu_room_lit","ok":true} +{"ts":"2026-04-05T05:31:13.746Z","tool":"Edit","target":"sake_detail_screen.dart","ok":true} +{"ts":"2026-04-05T05:31:19.424Z","tool":"Edit","target":"sake_detail_screen.dart","ok":true} +{"ts":"2026-04-05T05:31:27.433Z","tool":"Edit","target":"soul_screen.dart","ok":true} +{"ts":"2026-04-05T05:31:38.425Z","tool":"Edit","target":"sommelier_screen.dart","ok":true} +{"ts":"2026-04-05T05:31:43.599Z","tool":"Edit","target":"sake_grid_item.dart","ok":true} +{"ts":"2026-04-05T05:31:48.156Z","tool":"Edit","target":"sake_grid_item.dart","ok":true} +{"ts":"2026-04-05T05:31:54.626Z","tool":"Edit","target":"sake_grid_item.dart","ok":true} +{"ts":"2026-04-05T05:31:59.421Z","tool":"Edit","target":"sake_list_item.dart","ok":true} +{"ts":"2026-04-05T05:32:05.285Z","tool":"Edit","target":"sake_list_item.dart","ok":true} +{"ts":"2026-04-05T05:32:11.863Z","tool":"Edit","target":"sake_list_item.dart","ok":true} +{"ts":"2026-04-05T05:32:28.978Z","tool":"Bash","target":"flutter analyze lib/screens/sake_detail_screen.dart lib/widgets/home/sake_grid_i","ok":true} +{"ts":"2026-04-05T05:32:52.303Z","tool":"Bash","target":"flutter analyze lib/widgets/home/sake_grid_item.dart 2>&1 | grep -v \"^$\" | tail ","ok":true} +{"ts":"2026-04-05T05:33:05.843Z","tool":"Edit","target":"sake_grid_item.dart","ok":true} +{"ts":"2026-04-05T05:33:17.534Z","tool":"Bash","target":"flutter analyze lib/widgets/home/sake_grid_item.dart lib/widgets/home/sake_list_","ok":true} +{"ts":"2026-04-05T05:33:22.852Z","tool":"Edit","target":"sake_list_item.dart","ok":true} +{"ts":"2026-04-05T05:33:32.777Z","tool":"Bash","target":"flutter analyze lib/widgets/home/sake_grid_item.dart lib/widgets/home/sake_list_","ok":true} +{"ts":"2026-04-05T05:33:40.440Z","tool":"Bash","target":"git add lib/screens/sake_detail_screen.dart lib/widgets/home/sake_grid_item.dart","ok":true} +{"ts":"2026-04-05T05:52:53.296Z","tool":"Edit","target":"sake_basic_info_section.dart","ok":true} +{"ts":"2026-04-05T05:53:02.777Z","tool":"Edit","target":"sake_detail_specs.dart","ok":true} +{"ts":"2026-04-05T05:53:11.220Z","tool":"Edit","target":"sake_detail_specs.dart","ok":true} +{"ts":"2026-04-05T05:53:32.830Z","tool":"Edit","target":"sake_detail_screen.dart","ok":true} +{"ts":"2026-04-05T05:53:59.933Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/ponshu_room_lite && flutter analyze lib/screen","ok":true} +{"ts":"2026-04-05T05:54:08.808Z","tool":"Edit","target":"sake_basic_info_section.dart","ok":true} +{"ts":"2026-04-05T05:54:16.203Z","tool":"Edit","target":"sake_basic_info_section.dart","ok":true} +{"ts":"2026-04-05T05:54:24.617Z","tool":"Bash","target":"grep -n \"app.use(express.json\\|app.use(cors\\|app.use(express.urlencoded\" c:/User","ok":true} +{"ts":"2026-04-05T05:54:31.306Z","tool":"Bash","target":"flutter analyze lib/screens/sake_detail_screen.dart lib/screens/sake_detail/sect","ok":true} +{"ts":"2026-04-05T05:54:33.949Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-05T05:54:46.375Z","tool":"Edit","target":"sake_basic_info_section.dart","ok":true} +{"ts":"2026-04-05T05:54:54.787Z","tool":"Edit","target":"sake_basic_info_section.dart","ok":true} +{"ts":"2026-04-05T05:54:57.471Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git add server.js && git commit -m \"fix: sk","ok":true} +{"ts":"2026-04-05T05:55:03.170Z","tool":"Bash","target":"ssh soar-vps \"docker logs posimai-api-1 2>&1 | grep -i 'stripe\\|webhook\\|premium","ok":true} +{"ts":"2026-04-05T05:55:09.189Z","tool":"Bash","target":"flutter analyze lib/screens/sake_detail_screen.dart lib/screens/sake_detail/sect","ok":true} +{"ts":"2026-04-05T05:55:21.721Z","tool":"Bash","target":"git add lib/screens/sake_detail_screen.dart lib/screens/sake_detail/sections/sak","ok":true} +{"ts":"2026-04-05T05:56:28.776Z","tool":"Bash","target":"ssh soar-vps \"docker logs posimai-api-1 2>&1 | grep -i 'stripe\\|webhook\\|premium","ok":true} +{"ts":"2026-04-05T05:56:37.084Z","tool":"Bash","target":"ssh soar-vps \"docker exec posimai-db-1 psql -U posimai -d posimai_brain -c \\\"SEL","ok":true} +{"ts":"2026-04-05T06:00:33.625Z","tool":"Bash","target":"grep -n \"createSessionJWT\\|plan\\|premium\" c:/Users/maita/posimai-project/server.","ok":true} +{"ts":"2026-04-05T06:01:54.071Z","tool":"Bash","target":"ssh soar-vps \"docker exec posimai-db-1 psql -U posimai -d posimai_brain -c \\\"SEL","ok":true} +{"ts":"2026-04-05T06:01:58.728Z","tool":"Bash","target":"grep -n \"SELECT.*FROM users WHERE email\\|INSERT INTO users\\|ON CONFLICT\" c:/User","ok":true} +{"ts":"2026-04-05T06:02:16.271Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-05T06:02:26.165Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-05T06:02:31.593Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-store && git log --oneline | head -10","ok":true} +{"ts":"2026-04-05T06:02:36.680Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-store && git show 0533f6f:index-c.html","ok":true} +{"ts":"2026-04-05T06:02:42.984Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-store && git show 0533f6f:index-c.html","ok":true} +{"ts":"2026-04-05T06:02:47.383Z","tool":"Bash","target":"grep -n \"buyBtn\\|href=\\\"#\\\"\\|TODO.*stripe\" c:/Users/maita/posimai-project/posima","ok":true} +{"ts":"2026-04-05T06:02:59.156Z","tool":"Edit","target":"index-d.html","ok":true} +{"ts":"2026-04-05T06:03:05.260Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git add server.js && git commit -m \"feat: i","ok":true} +{"ts":"2026-04-05T06:03:27.517Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && bash deploy-server.sh 2>&1 | tail -10","ok":true} +{"ts":"2026-04-05T06:03:36.203Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-store && git add index-d.html && git c","ok":true} +{"ts":"2026-04-05T11:28:09.318Z","tool":"Bash","target":"grep -n \"header\\|settings-panel\\|settings-trigger\\|icon-btn\\|header-actions\" c:/","ok":true} +{"ts":"2026-04-05T11:28:09.871Z","tool":"Bash","target":"grep -n \"header\\|settings-panel\\|settings-trigger\\|icon-btn\\|header-actions\" c:/","ok":true} +{"ts":"2026-04-05T11:28:10.685Z","tool":"Bash","target":"grep -n \"header\\|settings-panel\\|settings-trigger\\|icon-btn\\|header-actions\" c:/","ok":true} +{"ts":"2026-04-05T11:28:17.250Z","tool":"Bash","target":"grep -n \"settings-panel\\|settings-item\\|theme-btn\\|api.*key\\|API.*Key\\|設定\" c:/Us","ok":true} +{"ts":"2026-04-05T11:28:18.895Z","tool":"Bash","target":"grep -n \"settings-panel\\|theme-btn\\|api.*key\\|API.*Key\\|設定\\|posimai_api\" c:/User","ok":true} +{"ts":"2026-04-05T11:28:35.124Z","tool":"Bash","target":"# ヘッダーのicon-btnサイズ比較\ngrep -n \"icon-btn\\b\" c:/Users/maita/posimai-project/posimai","ok":true} +{"ts":"2026-04-05T11:28:42.260Z","tool":"Bash","target":"grep -A5 \"\\.icon-btn i {\" c:/Users/maita/posimai-project/posimai-brain/style.css","ok":true} +{"ts":"2026-04-05T11:28:44.899Z","tool":"Bash","target":"grep -n \"RESEND_API_KEY\\|resend\\|sendMail\\|from.*noreply\" c:/Users/maita/posimai","ok":true} +{"ts":"2026-04-05T11:28:49.988Z","tool":"Bash","target":"grep -A5 \"\\.icon-btn i {\" c:/Users/maita/posimai-project/posimai-feed/index.html","ok":true} +{"ts":"2026-04-05T11:31:16.355Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-05T11:31:38.287Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-dashboard && git add src/app/auth/veri","ok":true} +{"ts":"2026-04-05T13:16:28.172Z","tool":"Bash","target":"wc -l /c/Users/maita/posimai-project/posimai-dev/station-b.html","ok":true} +{"ts":"2026-04-05T13:18:16.495Z","tool":"Write","target":"atlas.json","ok":true} +{"ts":"2026-04-05T13:18:36.556Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-05T13:18:45.172Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-05T13:18:58.977Z","tool":"Edit","target":"station-b.html","ok":true} +{"ts":"2026-04-05T13:19:04.847Z","tool":"Edit","target":"station-b.html","ok":true} +{"ts":"2026-04-05T13:19:15.966Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-atlas && git add atlas.json && git com","ok":true} +{"ts":"2026-04-05T13:19:22.342Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-dashboard && git add src/app/ecosystem","ok":true} +{"ts":"2026-04-05T13:19:23.921Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-dev && git add station-b.html && git c","ok":true} +{"ts":"2026-04-05T13:19:27.006Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project && cat package.json | grep -A5 '\"scripts\"'","ok":true} +{"ts":"2026-04-05T13:20:00.446Z","tool":"Bash","target":"npm run deploy:dev 2>&1 | tail -15","ok":true} +{"ts":"2026-04-05T13:36:33.886Z","tool":"Edit","target":"station-b.html","ok":true} +{"ts":"2026-04-05T13:36:47.911Z","tool":"Edit","target":"station-b.html","ok":true} +{"ts":"2026-04-05T13:37:26.088Z","tool":"Bash","target":"git add posimai-dev/station-b.html && git commit -m \"chore: remove Syncthing fro","ok":true} +{"ts":"2026-04-05T13:44:19.156Z","tool":"Edit","target":"station-b.html","ok":true} +{"ts":"2026-04-05T13:45:03.886Z","tool":"Bash","target":"git add posimai-dev/station-b.html && git commit -m \"fix: Uptime Kuma port 3001→","ok":true} +{"ts":"2026-04-05T13:46:27.034Z","tool":"Edit","target":"atlas.json","ok":true} +{"ts":"2026-04-05T13:46:31.024Z","tool":"Edit","target":"atlas.json","ok":true} +{"ts":"2026-04-05T13:46:34.607Z","tool":"Edit","target":"atlas.json","ok":true} +{"ts":"2026-04-05T13:46:47.199Z","tool":"Edit","target":"projects.json","ok":true} +{"ts":"2026-04-05T13:46:52.044Z","tool":"Edit","target":"projects.json","ok":true} +{"ts":"2026-04-05T13:46:56.204Z","tool":"Edit","target":"projects.json","ok":true} +{"ts":"2026-04-05T13:47:01.108Z","tool":"Edit","target":"projects.json","ok":true} +{"ts":"2026-04-05T13:47:07.821Z","tool":"Edit","target":"projects.json","ok":true} +{"ts":"2026-04-05T13:47:17.496Z","tool":"Edit","target":"projects.json","ok":true} +{"ts":"2026-04-05T13:47:36.094Z","tool":"Edit","target":"BentoCard.tsx","ok":true} +{"ts":"2026-04-05T13:48:10.643Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-05T13:48:31.636Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-atlas && git add atlas.json && git com","ok":true} +{"ts":"2026-04-05T13:48:36.693Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-dashboard && git add src/data/projects","ok":true} +{"ts":"2026-04-05T14:06:10.646Z","tool":"Bash","target":"wc -l c:/Users/maita/posimai-project/posimai-atlas/index.html","ok":true} +{"ts":"2026-04-05T14:15:09.016Z","tool":"Edit","target":"project_status.md","ok":true} +{"ts":"2026-04-05T14:15:18.513Z","tool":"Edit","target":"project_infrastructure.md","ok":true} +{"ts":"2026-04-05T14:15:32.157Z","tool":"Edit","target":"project_infrastructure.md","ok":true} +{"ts":"2026-04-05T14:17:51.566Z","tool":"Write","target":"project_status.md","ok":true} +{"ts":"2026-04-05T14:18:19.664Z","tool":"Write","target":"project_infrastructure.md","ok":true} +{"ts":"2026-04-05T14:18:44.654Z","tool":"Write","target":"project_api_keys.md","ok":true} +{"ts":"2026-04-05T14:18:52.315Z","tool":"Edit","target":"master-architecture.md","ok":true} +{"ts":"2026-04-05T14:18:59.539Z","tool":"Edit","target":"master-architecture.md","ok":true} +{"ts":"2026-04-05T14:19:11.435Z","tool":"Edit","target":"master-architecture.md","ok":true} +{"ts":"2026-04-05T14:19:16.412Z","tool":"Edit","target":"master-architecture.md","ok":true} +{"ts":"2026-04-05T14:19:32.107Z","tool":"Edit","target":"master-architecture.md","ok":true} +{"ts":"2026-04-05T14:19:36.824Z","tool":"Edit","target":"master-architecture.md","ok":true} +{"ts":"2026-04-05T14:19:53.537Z","tool":"Edit","target":"master-architecture.md","ok":true} +{"ts":"2026-04-05T14:20:03.723Z","tool":"Bash","target":"git add docs/master-architecture.md && git commit -m \"docs: update master-archit","ok":true} +{"ts":"2026-04-05T14:24:49.671Z","tool":"Write","target":"STATUS.md","ok":true} +{"ts":"2026-04-05T14:25:07.918Z","tool":"Edit","target":"CLAUDE.md","ok":true} +{"ts":"2026-04-05T14:25:15.568Z","tool":"Bash","target":"cp /c/Users/maita/posimai-project/CLAUDE.md /c/Users/maita/posimai-project/AGENT","ok":true} +{"ts":"2026-04-05T14:25:24.173Z","tool":"Bash","target":"git add STATUS.md CLAUDE.md AGENTS.md && git commit -m \"chore: add STATUS.md, AI","ok":true} +{"ts":"2026-04-05T14:27:49.135Z","tool":"Bash","target":"git remote -v","ok":true} +{"ts":"2026-04-05T14:38:23.249Z","tool":"Edit","target":"project_infrastructure.md","ok":true} +{"ts":"2026-04-05T15:06:57.931Z","tool":"Bash","target":"find \"c:\\Users\\maita\\posimai-project\" -type f -name \"*.js\" -o -name \"*.json\" -o ","ok":true} +{"ts":"2026-04-05T15:07:00.298Z","tool":"Bash","target":"ls -la \"c:\\Users\\maita\\posimai-project\" | grep -E \"^d\" | head -20","ok":true} +{"ts":"2026-04-05T15:07:03.757Z","tool":"Bash","target":"ls -la \"c:\\Users\\maita\\posimai-project\" | grep \"posimai\" | awk '{print $NF}'","ok":true} +{"ts":"2026-04-05T15:07:27.415Z","tool":"Bash","target":"find \"c:\\Users\\maita\\posimai-project\\posimai-log\" -name \"server.js\" -o -name \"pa","ok":true} +{"ts":"2026-04-05T15:07:28.997Z","tool":"Bash","target":"find \"c:\\Users\\maita\\posimai-project\\posimai-dev\" -name \"server.js\" -o -name \"pa","ok":true} +{"ts":"2026-04-05T15:07:44.372Z","tool":"Bash","target":"find \"c:\\Users\\maita\\posimai-project\\posimai-journal\" -type f -name \"*.js\" -o -n","ok":true} +{"ts":"2026-04-05T15:07:46.810Z","tool":"Bash","target":"find \"c:\\Users\\maita\\posimai-project\\posimai-reader\" -type f -name \"*.html\" -o -","ok":true} +{"ts":"2026-04-05T15:07:46.906Z","tool":"Bash","target":"find \"c:\\Users\\maita\\posimai-project\\posimai-together\" -type f -name \"*.html\" -o","ok":true} +{"ts":"2026-04-05T15:08:03.151Z","tool":"Bash","target":"find \"c:\\Users\\maita\\posimai-project\" -name \"package.json\" -not -path \"*/node_mo","ok":true} +{"ts":"2026-04-05T15:08:09.402Z","tool":"Bash","target":"find \"c:\\Users\\maita\\posimai-project\\posimai-brain\\js\" -type f -name \"*.js\" 2>/d","ok":true} +{"ts":"2026-04-05T15:08:15.371Z","tool":"Bash","target":"head -100 \"c:\\Users\\maita\\posimai-project\\posimai-brain\\index.html\" | grep -i \"l","ok":true} +{"ts":"2026-04-05T15:08:18.338Z","tool":"Bash","target":"find \"c:\\Users\\maita\\posimai-project\\posimai-feed\" -type f -name \"*.js\" -o -name","ok":true} +{"ts":"2026-04-05T15:08:25.769Z","tool":"Bash","target":"find \"c:\\Users\\maita\\posimai-project\\posimai-journal\" -type f -name \"*.js\" 2>/de","ok":true} +{"ts":"2026-04-05T15:31:47.949Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-05T15:31:55.089Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-05T15:32:08.624Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-05T15:33:51.484Z","tool":"Edit","target":"feedback_style.md","ok":true} +{"ts":"2026-04-05T15:34:01.589Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project/posimai-reader\" && git add index.html && git ","ok":true} +{"ts":"2026-04-05T15:37:41.691Z","tool":"Bash","target":"grep -n \"WebSocket\\|wss\\|pty\\|terminal\\|ws\\.\" \"c:/Users/maita/posimai-project/po","ok":true} +{"ts":"2026-04-05T15:38:49.112Z","tool":"Bash","target":"grep -r \"deploy:dev\\|deploy-dev\" \"c:/Users/maita/posimai-project/posimai-dev/pac","ok":true} +{"ts":"2026-04-05T15:38:51.949Z","tool":"Bash","target":"grep -r \"deploy:dev\" \"c:/Users/maita/posimai-project/package.json\" 2>/dev/null |","ok":true} +{"ts":"2026-04-05T15:39:07.024Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-05T15:39:12.747Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-05T15:39:46.565Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project\" && git add posimai-dev/server.js && git comm","ok":true} +{"ts":"2026-04-06T00:08:27.250Z","tool":"Edit","target":"feed.js","ok":true} +{"ts":"2026-04-06T00:08:47.103Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-06T00:09:02.525Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-06T00:09:08.662Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-06T00:09:30.888Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project\" && git add server.js && git commit -m \"fix: ","ok":true} +{"ts":"2026-04-06T00:09:53.256Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project\" && bash deploy-server.sh","ok":true} +{"ts":"2026-04-06T00:10:01.245Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project/posimai-feed\" && git add api/feed.js && git c","ok":true} +{"ts":"2026-04-06T00:11:48.269Z","tool":"Bash","target":"grep -n \"specificDesignation\\|alcoholContent\\|hiddenSpecs\\|get type\\b\" /c/Users/","ok":true} +{"ts":"2026-04-06T00:11:51.385Z","tool":"Bash","target":"grep -n \"String\\? type\\|double\\? alcoholContent\\|int\\? polishingRatio\" /c/Users/","ok":true} +{"ts":"2026-04-06T00:11:54.792Z","tool":"Bash","target":"grep -n \"type\\|alcoholContent\\|polishingRatio\" /c/Users/maita/posimai-project/po","ok":true} +{"ts":"2026-04-06T00:11:57.684Z","tool":"Bash","target":"grep -n \"class HiddenSpecs\\|String\\? type\\|double\\? alcoholContent\\|int\\? polish","ok":true} +{"ts":"2026-04-06T00:12:00.350Z","tool":"Bash","target":"grep -rn \"class HiddenSpecs\" /c/Users/maita/posimai-project/ponshu_room_lite/lib","ok":true} +{"ts":"2026-04-06T00:12:03.479Z","tool":"Bash","target":"grep -n \"String\\? type\\|double\\? alcohol\\|int\\? polish\" /c/Users/maita/posimai-p","ok":true} +{"ts":"2026-04-06T00:12:06.410Z","tool":"Bash","target":"grep -n \"type\\|alcohol\\|polishing\" /c/Users/maita/posimai-project/ponshu_room_li","ok":true} +{"ts":"2026-04-06T00:12:20.325Z","tool":"Edit","target":"sake_list_item.dart","ok":true} +{"ts":"2026-04-06T00:12:29.166Z","tool":"Edit","target":"sake_list_item.dart","ok":true} +{"ts":"2026-04-06T00:12:45.141Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/ponshu_room_lite && flutter analyze lib/widget","ok":true} +{"ts":"2026-04-06T00:12:59.649Z","tool":"Bash","target":"git add lib/widgets/home/sake_list_item.dart && git commit -m \"$(cat <<'EOF'\nfea","ok":true} +{"ts":"2026-04-06T00:13:08.554Z","tool":"Edit","target":"pubspec.yaml","ok":true} +{"ts":"2026-04-06T00:15:48.718Z","tool":"Bash","target":"bash build_consumer.sh 2>&1 | tail -12","ok":true} +{"ts":"2026-04-06T00:16:05.043Z","tool":"Bash","target":"git add pubspec.yaml && git commit -m \"chore: bump version to 1.0.20+31\n\nCo-Auth","ok":true} +{"ts":"2026-04-06T00:16:11.974Z","tool":"Bash","target":"GITEA_URL=\"http://100.76.7.3:3000\"\nREPO=\"mai/ponshu-room-lite\"\nTAG=\"v1.0.20\"\nCRE","ok":true} +{"ts":"2026-04-06T00:16:14.877Z","tool":"Bash","target":"cat /tmp/release_v20.json | head -c 300","ok":true} +{"ts":"2026-04-06T00:16:26.107Z","tool":"Bash","target":"GITEA_URL=\"http://100.76.7.3:3000\"\nREPO=\"mai/ponshu-room-lite\"\nCREDS=$(git crede","ok":true} +{"ts":"2026-04-06T00:16:43.177Z","tool":"Bash","target":"GITEA_URL=\"http://100.76.7.3:3000\"\nREPO=\"mai/ponshu-room-lite\"\nRELEASE_ID=9\nCRED","ok":true} +{"ts":"2026-04-06T00:16:53.998Z","tool":"Write","target":"releases.json","ok":true} +{"ts":"2026-04-06T00:17:02.263Z","tool":"Bash","target":"git add web/download/releases.json && git commit -m \"chore: update download page","ok":true} +{"ts":"2026-04-06T00:17:16.776Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/ponshu_room_lite/web/download && vercel --prod","ok":true} +{"ts":"2026-04-06T00:30:16.649Z","tool":"Bash","target":"grep -n \"supabase\\|realtime\\|subscribe\\|channel\" \"c:/Users/maita/posimai-project","ok":true} +{"ts":"2026-04-06T00:30:21.057Z","tool":"Bash","target":"grep -n \"subscribe\\|channel\\|realtime\\|on(\" \"c:/Users/maita/posimai-project/posi","ok":true} +{"ts":"2026-04-06T00:30:24.835Z","tool":"Bash","target":"grep -n \"poll\\|setInterval\\|setTimeout.*feed\\|autoRefresh\\|refresh\" \"c:/Users/ma","ok":true} +{"ts":"2026-04-06T00:34:52.656Z","tool":"Bash","target":"cat ~/.ssh/config | grep -i vps -A 5 || echo \"not found\"","ok":true} +{"ts":"2026-04-06T00:35:04.705Z","tool":"Bash","target":"ssh soar-vps \"cd /opt/posimai && docker compose exec -T db psql -U posimai_user ","ok":true} +{"ts":"2026-04-06T00:35:08.185Z","tool":"Bash","target":"ssh soar-vps \"cd /opt/posimai && docker compose ps\" 2>/dev/null","ok":true} +{"ts":"2026-04-06T00:35:13.141Z","tool":"Bash","target":"ssh soar-vps \"cd /opt/posimai && docker compose exec -T db psql -U posimai -d po","ok":true} +{"ts":"2026-04-06T00:35:19.012Z","tool":"Bash","target":"curl -s \"https://nlbmfrvndoajuadamoax.supabase.co/rest/v1/together_groups?select","ok":true} +{"ts":"2026-04-06T00:35:26.752Z","tool":"Bash","target":"SB_URL=\"https://nlbmfrvndoajuadamoax.supabase.co\"\nSB_KEY=\"sb_publishable_dryK66g","ok":true} +{"ts":"2026-04-06T00:35:56.802Z","tool":"Bash","target":"SB_URL=\"https://nlbmfrvndoajuadamoax.supabase.co\"\nSB_KEY=\"sb_publishable_dryK66g","ok":true} +{"ts":"2026-04-06T00:36:19.310Z","tool":"Bash","target":"SB_URL=\"https://nlbmfrvndoajuadamoax.supabase.co\"\nSB_KEY=\"sb_publishable_dryK66g","ok":true} +{"ts":"2026-04-06T00:36:30.187Z","tool":"Bash","target":"cat << 'PYEOF' > /tmp/gen_migration.py\nimport json, sys\n\ndef esc(s):\n if s is","ok":true} +{"ts":"2026-04-06T00:36:34.292Z","tool":"Bash","target":"python3 /tmp/gen_migration.py 2>&1 | head -20","ok":true} +{"ts":"2026-04-06T00:36:39.391Z","tool":"Bash","target":"which python3 && python3 --version 2>&1; ls /tmp/sb_*.json 2>&1; wc -c /tmp/sb_s","ok":true} +{"ts":"2026-04-06T00:36:56.642Z","tool":"Bash","target":"ssh soar-vps \"cat << 'NODEEOF' > /tmp/gen_migration.js\nconst https = require('ht","ok":true} +{"ts":"2026-04-06T00:37:03.400Z","tool":"Bash","target":"ssh soar-vps \"docker run --rm node:22-alpine sh -c 'node -e \\\"console.log(42)\\\"'","ok":true} +{"ts":"2026-04-06T00:37:08.629Z","tool":"Bash","target":"ssh soar-vps \"docker run --rm -v /tmp:/tmp node:22-alpine node /tmp/gen_migratio","ok":true} +{"ts":"2026-04-06T00:37:13.702Z","tool":"Bash","target":"ssh soar-vps \"cd /opt/posimai && docker compose exec -T db psql -U posimai -d po","ok":true} +{"ts":"2026-04-06T00:37:19.720Z","tool":"Bash","target":"ssh soar-vps \"cd /opt/posimai && docker compose exec -T db psql -U posimai -d po","ok":true} +{"ts":"2026-04-06T00:37:41.116Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-06T00:37:46.005Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-06T00:38:01.849Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project/posimai-together\" && git add index.html && gi","ok":true} +{"ts":"2026-04-06T00:54:23.576Z","tool":"Bash","target":"grep -n \"Synology\\|synology\\|接続中\\|connected\" c:/Users/maita/posimai-project/posi","ok":true} +{"ts":"2026-04-06T00:54:23.614Z","tool":"Bash","target":"grep -n \"apiUrl\\|api_url\\|API_URL\\|endpoint\\|together_api\" c:/Users/maita/posima","ok":true} +{"ts":"2026-04-06T00:54:28.457Z","tool":"Bash","target":"grep -n \"Synology\\|synology\\|status-icon\\|server-status\\|接続\" c:/Users/maita/posi","ok":true} +{"ts":"2026-04-06T00:54:32.563Z","tool":"Bash","target":"grep -n \"apiModeBadge\\|Synology\\|server.*status\\|status-icon\\|USE_API\\|mode.*bad","ok":true} +{"ts":"2026-04-06T00:58:42.400Z","tool":"Bash","target":"grep -n \"posimai_together_api_url\\|apiUrl\\|API_URL\" \"c:/Users/maita/posimai-proj","ok":true} +{"ts":"2026-04-06T00:58:46.470Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/ | grep -v node_modules | grep \"posimai-\\|pons","ok":true} +{"ts":"2026-04-06T00:58:56.887Z","tool":"Bash","target":"for dir in c:/Users/maita/posimai-project/posimai-*/; do\n name=$(basename \"$dir","ok":true} +{"ts":"2026-04-06T01:02:21.577Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-06T01:02:30.859Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-06T01:02:48.917Z","tool":"Edit","target":"settings.js","ok":true} +{"ts":"2026-04-06T01:02:55.227Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-06T01:02:59.189Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-06T01:03:03.990Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-06T01:03:07.870Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-06T01:03:12.116Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-06T01:03:19.683Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-06T01:03:34.599Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git submodule status | head -20","ok":true} +{"ts":"2026-04-06T01:03:40.009Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && git add index.html js/ui/sett","ok":true} +{"ts":"2026-04-06T01:03:50.927Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && npm run deploy 2>&1 | tail -5","ok":true} +{"ts":"2026-04-06T03:19:55.634Z","tool":"Bash","target":"grep -n \"apiUrl\\|posimai_together_api_url\\|APIエンドポイント\" \"c:/Users/maita/posimai-p","ok":true} +{"ts":"2026-04-06T03:40:06.546Z","tool":"Bash","target":"find C:/Users/maita/business/monthly-dashboard/components -maxdepth 2 -name \"*.t","ok":true} +{"ts":"2026-04-06T04:08:27.861Z","tool":"Bash","target":"grep -n \"fetch\\|API_URL\\|api\\.soar-enrich\\|GEMINI\\|Maps\\|google\" \"c:/Users/maita","ok":true} +{"ts":"2026-04-06T04:08:35.236Z","tool":"Bash","target":"grep -n \"fetchPlaces\\|MAPS_API\\|places\\|googleapis\" \"c:/Users/maita/posimai-proj","ok":true} +{"ts":"2026-04-06T04:08:39.578Z","tool":"Bash","target":"grep -n \"GOOGLE_MAPS\\|MAPS_KEY\\|places.*key\\|apiKey\\|API_KEY\\|goog\" \"c:/Users/ma","ok":true} +{"ts":"2026-04-06T04:09:04.332Z","tool":"Edit","target":"project_architecture_decisions.md","ok":true} +{"ts":"2026-04-06T04:43:21.858Z","tool":"Bash","target":"nslookup brain.posimai.soar-enrich.com 2>/dev/null || host brain.posimai.soar-en","ok":true} +{"ts":"2026-04-06T04:43:27.989Z","tool":"Edit","target":"project_status.md","ok":true} +{"ts":"2026-04-06T04:44:56.370Z","tool":"Bash","target":"grep -r \"ワイルドカード\\|wildcard\\|Eiji 依頼待ち\\|Eiji依頼待ち\" \"C:/Users/maita/.claude/project","ok":true} +{"ts":"2026-04-06T04:45:00.463Z","tool":"Bash","target":"grep -r \"Supabase Auth\\|Supabase.*採用\\|together.*Supabase\\|Supabase.*together\\|ha","ok":true} +{"ts":"2026-04-06T04:45:05.632Z","tool":"Bash","target":"grep -rn \"Syncthing\\|VOICEVOX.*Eiji\\|Eiji.*作業中\\|deploy-edge\\|supabase/functions\"","ok":true} +{"ts":"2026-04-06T04:45:36.306Z","tool":"Write","target":"project_infrastructure.md","ok":true} +{"ts":"2026-04-06T04:46:01.691Z","tool":"Write","target":"project_architecture_decisions.md","ok":true} +{"ts":"2026-04-06T04:46:07.571Z","tool":"Bash","target":"rm \"C:/Users/maita/.claude/projects/c--Users-maita-posimai-project/memory/refere","ok":true} +{"ts":"2026-04-06T04:46:23.635Z","tool":"Write","target":"MEMORY.md","ok":true} +{"ts":"2026-04-06T04:58:38.669Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-06T04:58:49.014Z","tool":"Edit","target":"settings.js","ok":true} +{"ts":"2026-04-06T04:59:08.541Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-06T04:59:17.533Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-06T04:59:30.943Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-06T04:59:39.229Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-06T05:00:02.501Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && git add index.html js/ui/sett","ok":true} +{"ts":"2026-04-06T06:19:56.344Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-06T06:20:09.124Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-06T06:20:14.704Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-06T06:20:19.765Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-06T06:20:24.779Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-06T06:20:34.992Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-06T06:20:49.502Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-06T06:21:00.778Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-06T06:21:39.073Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-06T06:21:49.929Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-06T06:21:59.291Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-06T06:22:09.100Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-06T06:22:21.768Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && git add index.html js/ui/sett","ok":true} +{"ts":"2026-04-06T06:22:32.631Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-feed && git add index.html && git comm","ok":true} +{"ts":"2026-04-06T07:48:44.416Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-06T07:48:49.664Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-06T07:48:55.925Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-06T07:49:14.547Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-06T07:49:19.720Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-06T07:49:40.350Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-06T07:50:01.203Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && git add index.html style.css ","ok":true} +{"ts":"2026-04-06T07:50:32.829Z","tool":"Edit","target":"sake_grid_item.dart","ok":true} +{"ts":"2026-04-06T07:50:47.570Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/ponshu_room_lite && flutter analyze lib/widget","ok":true} +{"ts":"2026-04-06T07:50:55.278Z","tool":"Bash","target":"git add lib/widgets/home/sake_grid_item.dart && git commit -m \"$(cat <<'EOF'\nfix","ok":true} +{"ts":"2026-04-06T07:53:22.190Z","tool":"Bash","target":"ssh soar-vps \"crontab -l 2>/dev/null; ls -la /opt/posimai/backup.sh 2>/dev/null\"","ok":true} +{"ts":"2026-04-06T07:53:27.022Z","tool":"Bash","target":"ssh soar-vps \"cat /opt/posimai/backup.sh && echo '---' && tail -20 /opt/posimai/","ok":true} +{"ts":"2026-04-06T07:53:42.627Z","tool":"Edit","target":"CLAUDE.md","ok":true} +{"ts":"2026-04-06T07:53:48.323Z","tool":"Bash","target":"grep -n \"deploy-edge\\|supabase-token\\|Supabase Edge\" \"c:/Users/maita/posimai-pro","ok":true} +{"ts":"2026-04-06T07:53:55.715Z","tool":"Edit","target":"AGENTS.md","ok":true} +{"ts":"2026-04-06T07:54:04.937Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project\" && git add CLAUDE.md AGENTS.md && git commit","ok":true} +{"ts":"2026-04-06T07:54:16.795Z","tool":"Bash","target":"ssh soar-vps \"cd /opt/posimai && docker compose exec -T db psql -U posimai -d po","ok":true} +{"ts":"2026-04-06T07:54:22.683Z","tool":"Bash","target":"ssh soar-vps \"cd /opt/posimai && docker compose exec -T db psql -U posimai -d po","ok":true} +{"ts":"2026-04-06T07:54:27.193Z","tool":"Bash","target":"ssh soar-vps \"cd /opt/posimai && docker compose exec -T db psql -U posimai -d po","ok":true} +{"ts":"2026-04-06T07:54:38.604Z","tool":"Bash","target":"grep -n \"posimai-brain\\|posimai-feed\\|--accent\\|--bg\\|--surface\\|color-scheme\\|d","ok":true} +{"ts":"2026-04-06T07:54:41.692Z","tool":"Bash","target":"grep -n \"\\-\\-accent\\|--bg\\|--surface\\|:root\\|data-theme\" \"c:/Users/maita/posimai","ok":true} +{"ts":"2026-04-06T07:54:46.417Z","tool":"Bash","target":"grep -n \"\\-\\-accent\\|--bg\\|--surface\\|:root\\|data-theme\" \"c:/Users/maita/posimai","ok":true} +{"ts":"2026-04-06T07:54:50.149Z","tool":"Bash","target":"grep -n \":root\\|--accent\\|--bg\\b\\|--surface\\b\\|--surface2\\|data-theme.*light\\|da","ok":true} +{"ts":"2026-04-06T07:54:54.697Z","tool":"Bash","target":"# Togetherのカラートークン定義部分を探す\ngrep -n \"0D0D0D\\|0a0a0a\\|6EE7B7\\|--accent.*#\\|--bg.*#\\","ok":true} +{"ts":"2026-04-06T07:54:58.837Z","tool":"Bash","target":"# Togetherのトークン定義元を確認(posimai-ui から継承しているはず)\ncurl -s \"https://posimai-ui.vercel.","ok":true} +{"ts":"2026-04-06T07:58:23.946Z","tool":"Write","target":"activity_stats.dart","ok":true} +{"ts":"2026-04-06T07:59:11.993Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-06T07:59:20.033Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-06T07:59:26.050Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-06T07:59:30.627Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-06T07:59:35.654Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-06T07:59:40.176Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-06T07:59:52.413Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-06T08:00:05.456Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && git add style.css && git comm","ok":true} +{"ts":"2026-04-06T08:01:25.235Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/docs/","ok":true} +{"ts":"2026-04-06T08:02:57.601Z","tool":"Write","target":"master-architecture.md","ok":true} +{"ts":"2026-04-06T08:03:30.055Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/ponshu_room_lite && flutter analyze lib/widget","ok":true} +{"ts":"2026-04-06T08:03:42.719Z","tool":"Edit","target":"level_title_card.dart","ok":true} +{"ts":"2026-04-06T08:03:49.243Z","tool":"Edit","target":"render.js","ok":true} +{"ts":"2026-04-06T08:03:51.049Z","tool":"Bash","target":"flutter analyze lib/widgets/gamification/level_title_card.dart 2>&1 | tail -5","ok":true} +{"ts":"2026-04-06T08:03:54.174Z","tool":"Edit","target":"pubspec.yaml","ok":true} +{"ts":"2026-04-06T08:03:58.346Z","tool":"Bash","target":"git diff --stat HEAD 2>&1","ok":true} +{"ts":"2026-04-06T08:04:06.985Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project && cat .gitignore | head -30","ok":true} +{"ts":"2026-04-06T08:04:09.715Z","tool":"Bash","target":"grep -n \"ponshu\" .gitignore","ok":true} +{"ts":"2026-04-06T08:04:13.096Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/ponshu_room_lite && git remote -v && git log -","ok":true} +{"ts":"2026-04-06T08:04:20.561Z","tool":"Bash","target":"git add lib/widgets/gamification/activity_stats.dart lib/widgets/gamification/le","ok":true} +{"ts":"2026-04-06T08:04:25.357Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/ponshu_room_lite/build_4_apks.sh","ok":true} +{"ts":"2026-04-06T08:04:28.248Z","tool":"Bash","target":"bash build_4_apks.sh 2>&1 &\necho \"Build started in background (PID: $!)\"","ok":true} +{"ts":"2026-04-06T08:04:41.694Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && git add js/ui/render.js && gi","ok":true} +{"ts":"2026-04-06T08:05:23.570Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project\" && git status --short","ok":true} +{"ts":"2026-04-06T08:05:38.606Z","tool":"Bash","target":"cat /c/Users/maita/AppData/Local/Temp/claude/c--Users-maita-posimai-project/2f7d","ok":true} +{"ts":"2026-04-06T08:05:41.391Z","tool":"Write","target":"STATUS.md","ok":true} +{"ts":"2026-04-06T08:05:45.040Z","tool":"Bash","target":"cat /c/Users/maita/AppData/Local/Temp/claude/c--Users-maita-posimai-project/2f7d","ok":true} +{"ts":"2026-04-06T08:05:47.529Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project\" && git add docs/master-architecture.md STATU","ok":true} +{"ts":"2026-04-06T08:05:55.224Z","tool":"Bash","target":"grep -E \"(Saved:|All 4 variants|ERROR|error)\" /c/Users/maita/AppData/Local/Temp/","ok":true} +{"ts":"2026-04-06T08:06:01.312Z","tool":"Bash","target":"ls -lh /c/Users/maita/posimai-project/ponshu_room_lite/build/apk_releases/ 2>/de","ok":true} +{"ts":"2026-04-06T08:06:03.306Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project\" && git push gitea main && git push github ma","ok":true} +{"ts":"2026-04-06T08:06:07.352Z","tool":"Bash","target":"wc -l /c/Users/maita/AppData/Local/Temp/claude/c--Users-maita-posimai-project/2f","ok":true} +{"ts":"2026-04-06T08:06:18.443Z","tool":"Bash","target":"cat /c/Users/maita/AppData/Local/Temp/claude/c--Users-maita-posimai-project/2f7d","ok":true} +{"ts":"2026-04-06T08:06:32.274Z","tool":"Bash","target":"ls -lh /c/Users/maita/posimai-project/ponshu_room_lite/build/apk_releases/2026-0","ok":true} +{"ts":"2026-04-06T08:06:39.181Z","tool":"Bash","target":"ls -lh /c/Users/maita/posimai-project/ponshu_room_lite/build/app/outputs/flutter","ok":true} +{"ts":"2026-04-06T08:06:56.314Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/ponshu_room_lite && source .env 2>/dev/null ||","ok":true} +{"ts":"2026-04-06T08:07:05.066Z","tool":"Bash","target":"ls -lh /c/Users/maita/posimai-project/ponshu_room_lite/build/apk_releases/2026-0","ok":true} +{"ts":"2026-04-06T08:07:09.273Z","tool":"Bash","target":"tail -20 /c/Users/maita/AppData/Local/Temp/claude/c--Users-maita-posimai-project","ok":true} +{"ts":"2026-04-06T08:11:20.831Z","tool":"Bash","target":"while [ $(ls /c/Users/maita/posimai-project/ponshu_room_lite/build/apk_releases/","ok":true} +{"ts":"2026-04-06T08:11:28.762Z","tool":"Bash","target":"git tag -f \"v1.0.21\" HEAD && git push gitea \"v1.0.21\" 2>&1","ok":true} +{"ts":"2026-04-06T08:12:10.084Z","tool":"Bash","target":"GITEA_URL=\"http://100.76.7.3:3000\" && REPO=\"mai/ponshu-room-lite\" && TAG=\"v1.0.2","ok":true} +{"ts":"2026-04-06T08:12:32.998Z","tool":"Bash","target":"GITEA_URL=\"http://100.76.7.3:3000\"\nREPO=\"mai/ponshu-room-lite\"\nTAG=\"v1.0.21\"\nGIT","ok":true} +{"ts":"2026-04-06T08:13:03.445Z","tool":"Bash","target":"GITEA_URL=\"http://100.76.7.3:3000\"\nREPO=\"mai/ponshu-room-lite\"\nTAG=\"v1.0.21\"\nGIT","ok":true} +{"ts":"2026-04-06T08:13:15.252Z","tool":"Bash","target":"echo \"protocol=http\nhost=100.76.7.3\nusername=mai\" | git credential fill 2>/dev/n","ok":true} +{"ts":"2026-04-06T08:13:19.942Z","tool":"Bash","target":"GITEA_URL=\"http://100.76.7.3:3000\"\nREPO=\"mai/ponshu-room-lite\"\nTAG=\"v1.0.21\"\n\nRE","ok":true} +{"ts":"2026-04-06T08:13:24.417Z","tool":"Bash","target":"GITEA_URL=\"http://100.76.7.3:3000\"\nREPO=\"mai/ponshu-room-lite\"\nTAG=\"v1.0.21\"\n\ncu","ok":true} +{"ts":"2026-04-06T08:13:38.610Z","tool":"Bash","target":"curl -s \"http://100.76.7.3:3000/api/v1/repos/mai/ponshu-room-lite/tags\" -u \"mai:","ok":true} +{"ts":"2026-04-06T08:13:43.962Z","tool":"Bash","target":"curl -s \"http://100.76.7.3:3000/api/v1/repos/mai/ponshu-room-lite/releases?limit","ok":true} +{"ts":"2026-04-06T08:14:12.696Z","tool":"Bash","target":"GITEA_URL=\"http://100.76.7.3:3000\"\nREPO=\"mai/ponshu-room-lite\"\nRELEASE_ID=10\nAPK","ok":true} +{"ts":"2026-04-06T08:14:24.679Z","tool":"Edit","target":"releases.json","ok":true} +{"ts":"2026-04-06T08:14:33.094Z","tool":"Bash","target":"git add web/download/releases.json && git commit -m \"chore: update download page","ok":true} +{"ts":"2026-04-06T08:14:40.596Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/ponshu_room_lite/web/download/ && cat /c/Users","ok":true} +{"ts":"2026-04-06T08:14:47.341Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/ponshu_room_lite/web/download/DEPLOYMENT_GUID","ok":true} +{"ts":"2026-04-06T08:14:50.719Z","tool":"Bash","target":"grep -i \"vercel\\|deploy\\|project\" /c/Users/maita/posimai-project/ponshu_room_lit","ok":true} +{"ts":"2026-04-06T08:14:56.645Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project && vercel ls 2>&1 | grep -i \"ponshu\\|download\"","ok":true} +{"ts":"2026-04-06T08:15:02.671Z","tool":"Bash","target":"vercel projects ls 2>&1 | grep -i \"ponshu\\|download\" | head -5","ok":true} +{"ts":"2026-04-06T08:15:15.103Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/ponshu_room_lite/web/download && vercel --prod","ok":true} +{"ts":"2026-04-06T11:05:56.156Z","tool":"Bash","target":"ls \"c:/Users/maita/posimai-project/supabase/\" 2>/dev/null && echo \"exists\" || ec","ok":true} +{"ts":"2026-04-06T11:05:59.174Z","tool":"Bash","target":"find \"c:/Users/maita/posimai-project/supabase\" -type f | head -20","ok":true} +{"ts":"2026-04-06T11:06:02.507Z","tool":"Bash","target":"find \"c:/Users/maita/posimai-project/supabase\" -type f ! -path \"*/.git/*\" ! -pat","ok":true} +{"ts":"2026-04-06T11:29:44.002Z","tool":"Bash","target":"ssh soar-vps \"grep -n 'together' /opt/posimai/server.js | head -50\"","ok":true} +{"ts":"2026-04-06T11:29:47.863Z","tool":"Bash","target":"ssh soar-vps \"sed -n '2240,2430p' /opt/posimai/server.js\"","ok":true} +{"ts":"2026-04-06T11:30:07.026Z","tool":"Bash","target":"ssh soar-vps \"docker ps --format '{{.Names}}'\"","ok":true} +{"ts":"2026-04-06T11:30:11.159Z","tool":"Bash","target":"ssh soar-vps \"docker exec posimai-db-1 psql -U posimai -d posimai_brain -c \\\"SEL","ok":true} +{"ts":"2026-04-06T13:50:47.042Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-06T13:50:53.171Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-06T13:50:58.646Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-06T13:51:04.601Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-06T13:51:27.002Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-06T13:51:32.044Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-06T13:51:52.458Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-06T13:51:58.605Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-06T13:52:09.164Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-06T13:52:15.609Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-06T13:52:29.311Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && git add index.html style.css ","ok":true} +{"ts":"2026-04-06T13:52:39.429Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-feed && git add index.html && git comm","ok":true} +{"ts":"2026-04-06T13:57:29.696Z","tool":"Edit","target":"middleware.ts","ok":true} +{"ts":"2026-04-06T13:57:41.345Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-dashboard && git add src/middleware.ts","ok":true} +{"ts":"2026-04-06T13:59:13.003Z","tool":"Bash","target":"grep -i '\"brain\"\\|posimai-brain\\|brain.*url\\|brain.*href\\|brain.*link' c:/Users/","ok":true} +{"ts":"2026-04-06T14:00:20.324Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-06T14:00:37.301Z","tool":"Edit","target":"BentoCard.tsx","ok":true} +{"ts":"2026-04-06T14:00:45.010Z","tool":"Edit","target":"BentoCard.tsx","ok":true} +{"ts":"2026-04-06T14:00:51.805Z","tool":"Edit","target":"BentoCard.tsx","ok":true} +{"ts":"2026-04-06T14:01:02.366Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && git add index.html && git com","ok":true} +{"ts":"2026-04-06T14:01:11.895Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-dashboard && git add src/components/ui","ok":true} +{"ts":"2026-04-06T14:03:40.878Z","tool":"Bash","target":"find c:/Users/maita/posimai-project/posimai-dashboard/src -name \"*.tsx\" | xargs ","ok":true} +{"ts":"2026-04-06T14:04:12.585Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-06T14:04:23.375Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-06T14:04:32.117Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-06T14:04:52.007Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-06T14:05:04.255Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-dashboard && git add src/app/auth/veri","ok":true} +{"ts":"2026-04-06T14:05:13.537Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-feed && git add index.html && git comm","ok":true} +{"ts":"2026-04-07T14:15:00.094Z","tool":"Write","target":"generate_voice.py","ok":true} +{"ts":"2026-04-07T14:15:07.213Z","tool":"Write","target":"run.bat","ok":true} +{"ts":"2026-04-07T14:17:16.747Z","tool":"Write","target":"run.bat","ok":true} +{"ts":"2026-04-07T14:19:15.930Z","tool":"Edit","target":"generate_voice.py","ok":true} +{"ts":"2026-04-07T14:20:22.278Z","tool":"Write","target":"run.bat","ok":true} +{"ts":"2026-04-07T14:22:10.163Z","tool":"Write","target":"run.bat","ok":true} +{"ts":"2026-04-07T14:22:16.748Z","tool":"Write","target":"test.py","ok":true} +{"ts":"2026-04-07T14:22:30.248Z","tool":"Edit","target":"test.py","ok":true} +{"ts":"2026-04-07T14:27:40.326Z","tool":"Write","target":"run.bat","ok":true} +{"ts":"2026-04-07T14:58:05.863Z","tool":"Write","target":"google_tts.py","ok":true} +{"ts":"2026-04-07T14:58:12.931Z","tool":"Write","target":"run.bat","ok":true} +{"ts":"2026-04-07T15:04:22.595Z","tool":"Edit","target":"google_tts.py","ok":true} +{"ts":"2026-04-07T15:07:57.200Z","tool":"Edit","target":"google_tts.py","ok":true} +{"ts":"2026-04-07T15:08:03.934Z","tool":"Edit","target":"google_tts.py","ok":true} +{"ts":"2026-04-07T15:08:09.603Z","tool":"Edit","target":"google_tts.py","ok":true} +{"ts":"2026-04-09T10:01:14.777Z","tool":"Bash","target":"grep -r \"GenerativeAIException\\|AI解析エラー.*Direct\\|Direct.*AI解析\\|gemini.*model\\|mo","ok":true} +{"ts":"2026-04-09T10:01:38.056Z","tool":"Bash","target":"grep \"google_generative_ai\" /c/Users/maita/posimai-project/ponshu_room_lite/pubs","ok":true} +{"ts":"2026-04-09T10:01:41.663Z","tool":"Bash","target":"grep -A3 \"google_generative_ai:\" /c/Users/maita/posimai-project/ponshu_room_lite","ok":true} +{"ts":"2026-04-09T10:01:44.576Z","tool":"Bash","target":"grep -A5 \"name: google_generative_ai\" /c/Users/maita/posimai-project/ponshu_room","ok":true} +{"ts":"2026-04-09T10:03:00.198Z","tool":"Bash","target":"grep -n \"model\\|gemini\\|2\\.5\\|flash\" /c/Users/maita/posimai-project/tools/proxy/","ok":true} +{"ts":"2026-04-09T10:04:16.800Z","tool":"Edit","target":"gemini_service.dart","ok":true} +{"ts":"2026-04-09T10:04:35.374Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/ponshu_room_lite && flutter analyze lib/servic","ok":true} +{"ts":"2026-04-09T10:04:40.890Z","tool":"Bash","target":"git add lib/services/gemini_service.dart && git commit -m \"$(cat <<'EOF'\nfix: ad","ok":true} +{"ts":"2026-04-09T10:04:44.610Z","tool":"Bash","target":"bash build_4_apks.sh 2>&1 | grep -E \"\\[|Saved:|All 4|Error\" &\necho \"Build starte","ok":true} +{"ts":"2026-04-09T10:04:58.377Z","tool":"Bash","target":"ls -lh /c/Users/maita/posimai-project/ponshu_room_lite/build/apk_releases/$(ls /","ok":true} +{"ts":"2026-04-09T10:05:01.650Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/ponshu_room_lite/build/apk_releases/ | tail -3","ok":true} +{"ts":"2026-04-09T10:05:05.244Z","tool":"Bash","target":"ls -lh /c/Users/maita/posimai-project/ponshu_room_lite/build/apk_releases/2026-0","ok":true} +{"ts":"2026-04-09T10:05:10.678Z","tool":"Bash","target":"grep -E \"Building|Saved|Error|error|FAILED\" /c/Users/maita/AppData/Local/Temp/cl","ok":true} +{"ts":"2026-04-09T10:05:13.725Z","tool":"Bash","target":"cat /c/Users/maita/AppData/Local/Temp/claude/c--Users-maita-posimai-project/2f7d","ok":true} +{"ts":"2026-04-09T10:08:35.655Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/ponshu_room_lite && bash build_4_apks.sh 2>&1 ","ok":true} +{"ts":"2026-04-09T10:08:54.365Z","tool":"Bash","target":"source .env && \\\nsed -i 's/applicationId = \"com.posimai.ponshu_room\"/application","ok":true} +{"ts":"2026-04-09T10:09:07.928Z","tool":"Bash","target":"grep \"applicationId\" /c/Users/maita/posimai-project/ponshu_room_lite/android/app","ok":true} +{"ts":"2026-04-09T10:09:11.608Z","tool":"Bash","target":"sed -i 's/applicationId = \"com.posimai.ponshu_room_lite\"/applicationId = \"com.po","ok":true} +{"ts":"2026-04-09T10:09:17.467Z","tool":"Bash","target":"source .env\n\nTIMESTAMP=$(ls build/apk_releases/ | tail -1)\nOUTPUT_DIR=\"build/apk","ok":true} +{"ts":"2026-04-09T10:09:24.496Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/ponshu_room_lite/build/apk_releases/2026-04-09","ok":true} +{"ts":"2026-04-09T10:09:34.206Z","tool":"Bash","target":"git log --oneline -3","ok":true} +{"ts":"2026-04-09T10:11:28.637Z","tool":"Bash","target":"source .env\n\nOUTPUT_DIR=\"build/apk_releases/2026-04-09_19-04-44\"\n\nset_lite_app_i","ok":true} +{"ts":"2026-04-09T10:11:38.014Z","tool":"Bash","target":"git tag -f \"v1.0.22\" HEAD && git push gitea \"v1.0.22\" 2>&1 | tail -3","ok":true} +{"ts":"2026-04-09T10:11:44.108Z","tool":"Bash","target":"GITEA_URL=\"http://100.76.7.3:3000\"\nREPO=\"mai/ponshu-room-lite\"\nTAG=\"v1.0.22\"\n\nRE","ok":true} +{"ts":"2026-04-09T10:12:12.094Z","tool":"Bash","target":"GITEA_URL=\"http://100.76.7.3:3000\"\nREPO=\"mai/ponshu-room-lite\"\nRELEASE_ID=11\nAPK","ok":true} +{"ts":"2026-04-09T10:12:16.860Z","tool":"Edit","target":"releases.json","ok":true} +{"ts":"2026-04-09T10:12:20.619Z","tool":"Edit","target":"releases.json","ok":true} +{"ts":"2026-04-09T10:12:29.535Z","tool":"Bash","target":"git add web/download/releases.json && git commit -m \"chore: update download page","ok":true} +{"ts":"2026-04-09T10:12:43.000Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/ponshu_room_lite/web/download && vercel --prod","ok":true} +{"ts":"2026-04-09T10:16:13.824Z","tool":"Bash","target":"grep -r \"offline\\|queue\\|pending\\|待機\\|キュー\\|SocketException\\|NetworkException\" /c","ok":true} +{"ts":"2026-04-09T10:16:14.574Z","tool":"Bash","target":"grep -r \"SocketException\\|ConnectivityException\\|isOnline\\|connectivity\\|network","ok":true} +{"ts":"2026-04-09T10:16:17.183Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/ponshu_room_lite/lib/services/draft_service.d","ok":true} +{"ts":"2026-04-09T10:16:18.676Z","tool":"Bash","target":"grep -n \"offline\\|queue\\|draft\\|pending\\|SocketException\\|isOnline\\|NetworkExcep","ok":true} +{"ts":"2026-04-09T10:16:56.947Z","tool":"Edit","target":"gemini_service.dart","ok":true} +{"ts":"2026-04-09T10:17:11.369Z","tool":"Edit","target":"camera_screen.dart","ok":true} +{"ts":"2026-04-09T10:17:23.245Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/ponshu_room_lite && flutter analyze lib/screen","ok":true} +{"ts":"2026-04-09T10:17:30.727Z","tool":"Bash","target":"git add lib/services/gemini_service.dart lib/screens/camera_screen.dart && git c","ok":true} +{"ts":"2026-04-09T10:21:19.555Z","tool":"Bash","target":"bash build_4_apks.sh 2>&1 | grep -E \"\\[|Saved:|All 4|Error|Built|assembleRelease","ok":true} +{"ts":"2026-04-09T10:21:31.345Z","tool":"Bash","target":"\\\nLATEST_DIR=$(ls build/apk_releases/ | tail -1) && \\\necho \"Dir: $LATEST_DIR\" &&","ok":true} +{"ts":"2026-04-09T10:22:07.754Z","tool":"Bash","target":"RELEASE_RESP=$(curl -s -X POST \"http://100.76.7.3:3000/api/v1/repos/mai/ponshu-r","ok":true} +{"ts":"2026-04-09T10:22:11.306Z","tool":"Edit","target":"releases.json","ok":true} +{"ts":"2026-04-09T10:22:15.567Z","tool":"Edit","target":"releases.json","ok":true} +{"ts":"2026-04-09T10:22:35.041Z","tool":"Bash","target":"git add web/download/releases.json && git commit -m \"chore: update download page","ok":true} +{"ts":"2026-04-09T10:26:09.130Z","tool":"Bash","target":"grep -n \"alcohol\\|度\\|%\\|PeekChip\\|peek\\|アルコール\" /c/Users/maita/posimai-project/po","ok":true} +{"ts":"2026-04-09T10:26:37.621Z","tool":"Edit","target":"sake_detail_specs.dart","ok":true} +{"ts":"2026-04-09T10:26:53.251Z","tool":"Edit","target":"level_title_card.dart","ok":true} +{"ts":"2026-04-09T10:27:05.002Z","tool":"Edit","target":"activity_stats.dart","ok":true} +{"ts":"2026-04-09T10:27:16.955Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/ponshu_room_lite && flutter analyze lib/widget","ok":true} +{"ts":"2026-04-09T10:27:26.131Z","tool":"Bash","target":"git add lib/widgets/sake_detail/sake_detail_specs.dart lib/widgets/gamification/","ok":true} +{"ts":"2026-04-09T10:31:20.632Z","tool":"Bash","target":"bash build_4_apks.sh 2>&1 | grep -E \"\\[|Saved:|All 4|Error|Built|assembleRelease","ok":true} +{"ts":"2026-04-09T10:31:55.542Z","tool":"Bash","target":"LATEST_DIR=$(ls build/apk_releases/ | tail -1)\ngit tag -f \"v1.0.24\" HEAD && git ","ok":true} +{"ts":"2026-04-09T10:31:58.589Z","tool":"Edit","target":"releases.json","ok":true} +{"ts":"2026-04-09T10:32:02.992Z","tool":"Edit","target":"releases.json","ok":true} +{"ts":"2026-04-09T10:32:20.846Z","tool":"Bash","target":"git add web/download/releases.json && git commit -m \"chore: update download page","ok":true} +{"ts":"2026-04-09T11:37:50.401Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-feed/","ok":true} +{"ts":"2026-04-09T11:37:54.699Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-feed/api/","ok":true} +{"ts":"2026-04-09T11:38:04.325Z","tool":"Bash","target":"wc -l c:/Users/maita/posimai-project/posimai-feed/index.html","ok":true} +{"ts":"2026-04-09T11:38:24.098Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-dev/","ok":true} +{"ts":"2026-04-09T11:38:29.588Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/ | grep -v node_modules","ok":true} +{"ts":"2026-04-09T11:38:46.138Z","tool":"Bash","target":"grep -rn \"share.*target\\|shareTarget\\|navigator.share\\|POST.*articles\\|/articles","ok":true} +{"ts":"2026-04-09T11:39:11.024Z","tool":"Bash","target":"grep -n \"share\\|feed\\|/articles\\|POST\" c:/Users/maita/posimai-project/posimai-re","ok":true} +{"ts":"2026-04-09T11:40:22.094Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-feed && git log --oneline -10","ok":true} +{"ts":"2026-04-09T11:40:22.391Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-feed && git log --all --oneline -20","ok":true} +{"ts":"2026-04-09T11:40:25.383Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-feed && git log --all --oneline | tail","ok":true} +{"ts":"2026-04-09T11:40:36.056Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-feed && git log --all --follow -p mani","ok":true} +{"ts":"2026-04-09T11:40:36.474Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-feed && git show fbe85ff:manifest.json","ok":true} +{"ts":"2026-04-09T11:40:43.148Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-feed && git show fbe85ff --stat | head","ok":true} +{"ts":"2026-04-09T11:40:43.544Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-feed && git show fbe85ff -- index.html","ok":true} +{"ts":"2026-04-09T11:40:48.732Z","tool":"Bash","target":"grep -n \"URLSearchParams\\|location.search\\|?url=\\|share\" c:/Users/maita/posimai-","ok":true} +{"ts":"2026-04-09T11:41:05.378Z","tool":"Bash","target":"grep -n \"feed.*save\\|save.*feed\\|share.*target\\|quick.save\\|/clip\\|/capture\" c:/","ok":true} +{"ts":"2026-04-09T11:41:08.317Z","tool":"Bash","target":"grep -n \"runFeedFetch\\|feed_articles.*insert\\|INSERT.*feed_articles\" c:/Users/ma","ok":true} +{"ts":"2026-04-09T11:41:19.241Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git log --oneline -10 -- server.js","ok":true} +{"ts":"2026-04-09T11:41:19.677Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git log --oneline --since=\"2026-03-01\" -- s","ok":true} +{"ts":"2026-04-09T11:41:24.829Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git show 3cd8ebd --stat","ok":true} +{"ts":"2026-04-09T11:41:25.443Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git show 3cd8ebd -- server.js | grep \"^\\+\" ","ok":true} +{"ts":"2026-04-09T11:41:46.727Z","tool":"Bash","target":"grep -n \"input.*url\\|url.*input\\|add.*url\\|bookmark\\|clip\\|capture\\|import\" c:/U","ok":true} +{"ts":"2026-04-09T11:42:18.189Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-feed && git show 2abe19b:index.html | ","ok":true} +{"ts":"2026-04-09T11:44:37.756Z","tool":"Bash","target":"grep -n \"feed_media\\|feed_article\" c:/Users/maita/posimai-project/server.js | he","ok":true} +{"ts":"2026-04-09T11:44:47.673Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-feed && git log --all --oneline | grep","ok":true} +{"ts":"2026-04-09T11:44:50.597Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-feed && git show 8bcf1bb:manifest.json","ok":true} +{"ts":"2026-04-09T11:45:04.450Z","tool":"Bash","target":"grep -rn \"feed\\|posimai-feed\" c:/Users/maita/posimai-project/posimai-reader/inde","ok":true} +{"ts":"2026-04-09T11:45:09.514Z","tool":"Bash","target":"grep -rn \"posimai-feed\\|/feed/share\\|Web共有\\|share_target\" c:/Users/maita/posimai","ok":true} +{"ts":"2026-04-09T11:45:12.167Z","tool":"Bash","target":"cat c:/Users/maita/posimai-project/posimai-brain/manifest.json","ok":true} +{"ts":"2026-04-09T11:45:19.821Z","tool":"Bash","target":"grep -n \"share\\|URLSearchParams\\|location.search\\|?url\\|share_target\" c:/Users/m","ok":true} +{"ts":"2026-04-09T11:45:27.786Z","tool":"Bash","target":"grep -n \"share\\|urlParam\\|?url\\|saveArticle\\|POST.*save\\|/save\" c:/Users/maita/p","ok":true} +{"ts":"2026-04-09T11:45:30.162Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-brain/","ok":true} +{"ts":"2026-04-09T11:45:33.261Z","tool":"Bash","target":"grep -n \"share\\|urlParam\\|?url\\|saveArticle\\|POST.*save\\|/save\\|share_target\" c:","ok":true} +{"ts":"2026-04-09T11:45:38.847Z","tool":"Bash","target":"grep -n \"addArticleFromCommand\\|addArticle\\|saveArticle\\|POST.*save\" c:/Users/ma","ok":true} +{"ts":"2026-04-09T11:45:42.003Z","tool":"Bash","target":"grep -n \"addArticleFromCommand\\|POST.*save\\|/save\\|optimistic\\|instant\" c:/Users","ok":true} +{"ts":"2026-04-09T11:47:36.077Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-09T11:47:55.156Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-09T11:48:11.499Z","tool":"Edit","target":"command.js","ok":true} +{"ts":"2026-04-09T11:48:17.482Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git add server.js && git commit -m \"fix: PO","ok":true} +{"ts":"2026-04-09T11:48:18.278Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && git add js/ui/command.js && g","ok":true} +{"ts":"2026-04-09T11:48:40.166Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && bash deploy-server.sh 2>&1 | tail -20","ok":true} +{"ts":"2026-04-09T11:48:45.336Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && npm run deploy 2>&1 | tail -1","ok":true} +{"ts":"2026-04-09T11:57:16.854Z","tool":"Write","target":"sign_and_pack.bat","ok":true} +{"ts":"2026-04-09T12:16:47.190Z","tool":"Bash","target":"cat c:/Users/maita/posimai-project/posimai-brain/sw.js","ok":true} +{"ts":"2026-04-09T12:16:48.192Z","tool":"Bash","target":"grep -n \"sparkle\\|shimmer\\|summary\\|AI分析\\|animate\\|blink\\|pulse\\|pending\" c:/Use","ok":true} +{"ts":"2026-04-09T12:16:57.824Z","tool":"Bash","target":"grep -n \"shimmer\\|sparkle\\|AI分析\\|pending\\|summary\\|⏳\\|analysis\" c:/Users/maita/p","ok":true} +{"ts":"2026-04-09T12:17:11.435Z","tool":"Bash","target":"grep -n \"shimmer\\|sparkle\\|AI.*icon\\|spark\\|pending.*anim\\|analysis.*anim\\|ai-ic","ok":true} +{"ts":"2026-04-09T12:17:15.179Z","tool":"Bash","target":"grep -n \"sparkle\\|ai.*pending\\|pending.*ai\\|summary.*shimmer\\|shimmer.*summary\\|","ok":true} +{"ts":"2026-04-09T12:17:18.532Z","tool":"Bash","target":"grep -rn \"sparkle\\|spark\\|AI分析\\|ai.*icon\\|pending\" c:/Users/maita/posimai-projec","ok":true} +{"ts":"2026-04-09T12:17:48.042Z","tool":"Bash","target":"grep -n \"article.*summary\\|summary.*shimmer\\|analysis\\|pending\\|sk-sum\\|sparkle\\","ok":true} +{"ts":"2026-04-09T12:18:02.840Z","tool":"Bash","target":"grep -rn \"sparkle\\|spark\\|lucide.*spark\\|data-lucide.*spark\" c:/Users/maita/posi","ok":true} +{"ts":"2026-04-09T12:18:05.821Z","tool":"Bash","target":"grep -n \"AI分析中\\|再分析中\\|pending\\|analysis\" c:/Users/maita/posimai-project/posimai-","ok":true} +{"ts":"2026-04-09T12:18:25.675Z","tool":"Bash","target":"grep -n \"ai-pending\\|analyzing\\|article-item.*class\\|className\\|classList\" c:/Us","ok":true} +{"ts":"2026-04-09T12:19:02.590Z","tool":"Bash","target":"grep -n \"sparkle\\|shimmer\\|pulse\\|blink\\|glow\\|twinkle\" c:/Users/maita/posimai-p","ok":true} +{"ts":"2026-04-09T12:19:16.883Z","tool":"Bash","target":"grep -n \"AI分析中\\|pending\\|analyzing\\|sk\\b\\|shimmer\\|sparkle\" c:/Users/maita/posim","ok":true} +{"ts":"2026-04-09T12:19:20.804Z","tool":"Bash","target":"grep -n \"sparkle\\|AI.*icon\\|ai.*status\\|title.*row\\|title-row\" c:/Users/maita/po","ok":true} +{"ts":"2026-04-09T12:19:24.518Z","tool":"Bash","target":"grep -n \"title-row\\|title_row\" c:/Users/maita/posimai-project/posimai-brain/styl","ok":true} +{"ts":"2026-04-09T12:20:59.471Z","tool":"Edit","target":"command.js","ok":true} +{"ts":"2026-04-09T12:21:11.606Z","tool":"Edit","target":"render.js","ok":true} +{"ts":"2026-04-09T12:21:17.802Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-09T12:21:29.687Z","tool":"Edit","target":"sw.js","ok":true} +{"ts":"2026-04-09T12:21:35.196Z","tool":"Bash","target":"grep -n \"v=22\\|v=23\\|style.css\\|main.js\" c:/Users/maita/posimai-project/posimai-","ok":true} +{"ts":"2026-04-09T12:21:45.495Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-09T12:21:49.937Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-09T12:21:55.837Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && git add js/ui/command.js js/u","ok":true} +{"ts":"2026-04-09T12:22:03.778Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && npm run deploy 2>&1 | tail -8","ok":true} +{"ts":"2026-04-09T13:04:05.797Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && git show HEAD~2:js/ui/render.","ok":true} +{"ts":"2026-04-09T13:04:09.160Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && git show HEAD~2:js/ui/render.","ok":true} +{"ts":"2026-04-09T13:04:12.615Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && git show HEAD~2:js/ui/render.","ok":true} +{"ts":"2026-04-09T13:04:33.700Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && git log --all --oneline | hea","ok":true} +{"ts":"2026-04-09T13:04:37.616Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && git log --all --oneline | gre","ok":true} +{"ts":"2026-04-09T13:04:40.074Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && git log --all --oneline | tai","ok":true} +{"ts":"2026-04-09T13:04:43.976Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && git log --all --oneline | gre","ok":true} +{"ts":"2026-04-09T13:04:48.453Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && git show d164417 -- | grep \"^","ok":true} +{"ts":"2026-04-09T13:04:52.949Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && git stash list 2>/dev/null | ","ok":true} +{"ts":"2026-04-09T13:04:56.227Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && git log --all --oneline --dif","ok":true} +{"ts":"2026-04-09T13:04:59.666Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && git show 8c02c55:js/ui/render","ok":true} +{"ts":"2026-04-09T13:05:06.118Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && for commit in $(git log --all","ok":true} +{"ts":"2026-04-09T13:05:40.153Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && git show 289b2a38:js/ui/rende","ok":true} +{"ts":"2026-04-09T13:06:06.303Z","tool":"Edit","target":"render.js","ok":true} +{"ts":"2026-04-09T13:06:14.555Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-09T13:06:19.997Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && git add js/ui/render.js style","ok":true} +{"ts":"2026-04-09T13:06:27.462Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && npm run deploy 2>&1 | tail -8","ok":true} +{"ts":"2026-04-09T13:36:41.848Z","tool":"Bash","target":"wc -l c:/Users/maita/posimai-project/server.js && head -50 c:/Users/maita/posima","ok":true} +{"ts":"2026-04-09T13:36:49.095Z","tool":"Bash","target":"grep -n \"checkRateLimit\\|rateLimit\\|Map()\\|setInterval\" c:/Users/maita/posimai-p","ok":true} +{"ts":"2026-04-09T13:36:52.316Z","tool":"Bash","target":"grep -n \"SSRF\\|ssrf\\|privatenet\\|private.*ip\\|isPrivate\\|blocklist\\|allowlist\" c","ok":true} +{"ts":"2026-04-09T13:36:56.777Z","tool":"Bash","target":"grep -n \"fetchMeta\\|Jina\\|proxy\\|forward\\|ssrf\\|10\\.\\|192\\.168\\|127\\.\\|blocklist","ok":true} +{"ts":"2026-04-09T13:37:00.729Z","tool":"Bash","target":"grep -n \"pool.query\\|pool\\.end\\|pool\\.connect\\|DB_HOST\\|pg_pool\\|max:\\|idleTimeo","ok":true} +{"ts":"2026-04-09T13:37:04.967Z","tool":"Bash","target":"grep -c \"pool.query\" c:/Users/maita/posimai-project/server.js","ok":true} +{"ts":"2026-04-09T13:37:13.709Z","tool":"Bash","target":"grep -n \"console\\.log\\|console\\.warn\\|console\\.error\" c:/Users/maita/posimai-pro","ok":true} +{"ts":"2026-04-09T13:37:14.349Z","tool":"Bash","target":"grep -n \"TODO\\|FIXME\\|HACK\\|XXX\\|deprecated\\|// test\\b\" c:/Users/maita/posimai-p","ok":true} +{"ts":"2026-04-09T13:37:18.141Z","tool":"Bash","target":"grep -n \"ttsCache\\|VOICEVOX\\|voicevox\\|speak\" c:/Users/maita/posimai-project/ser","ok":true} +{"ts":"2026-04-09T13:37:19.198Z","tool":"Bash","target":"grep -n \"multiUserSafe\\|multiuser\\|user_id.*=.*req\\|req\\.userId\\|WHERE user_id\" ","ok":true} +{"ts":"2026-04-09T13:37:26.018Z","tool":"Bash","target":"grep -n \"SSRF\\|dns\\|lookup\\|net\\.connect\\|isPrivate\\|127\\.\\|169\\.254\\|10\\.\\|192\\","ok":true} +{"ts":"2026-04-09T13:37:26.079Z","tool":"Bash","target":"grep -n \"SSRF\\|ssrf\" c:/Users/maita/posimai-project/posimai-dev/server.js | head","ok":true} +{"ts":"2026-04-09T13:37:31.537Z","tool":"Bash","target":"grep -n \"ttsCache\\|Map()\\|setInterval\\|process.env\\|JWT_SECRET\\|SECRET\" c:/Users","ok":true} +{"ts":"2026-04-09T13:37:35.545Z","tool":"Bash","target":"grep -n \"fetchMeta\\|fetch(\" c:/Users/maita/posimai-project/server.js | grep -v \"","ok":true} +{"ts":"2026-04-09T14:45:18.890Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-09T14:45:35.947Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-09T14:45:45.909Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-09T14:45:55.308Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git add server.js && git commit -m \"fix: SS","ok":true} +{"ts":"2026-04-09T14:46:17.101Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && bash deploy-server.sh 2>&1 | tail -15","ok":true} +{"ts":"2026-04-09T14:47:51.180Z","tool":"Bash","target":"grep -n \"fetch(\" c:/Users/maita/posimai-project/server.js | grep -v \"//\\|pool\\|r","ok":true} +{"ts":"2026-04-09T14:47:53.129Z","tool":"Bash","target":"grep -n \"req\\.body\\|req\\.query\\|req\\.params\" c:/Users/maita/posimai-project/serv","ok":true} +{"ts":"2026-04-09T14:47:57.815Z","tool":"Bash","target":"grep -n \"together.*fetch\\|fetch.*together\\|Jina.*together\\|together.*jina\\|archi","ok":true} +{"ts":"2026-04-09T14:48:05.133Z","tool":"Bash","target":"grep -n \"authMiddleware\\|purchaseMiddleware\\|together.*auth\\|auth.*together\" c:/","ok":true} +{"ts":"2026-04-09T14:48:06.928Z","tool":"Bash","target":"grep -n \"r\\.post\\|r\\.get\\|r\\.patch\\|r\\.delete\\|r\\.put\" c:/Users/maita/posimai-pr","ok":true} +{"ts":"2026-04-09T14:48:27.867Z","tool":"Bash","target":"grep -n \"r\\.\\(get\\|post\\|patch\\|delete\\)\\('/together\" c:/Users/maita/posimai-pro","ok":true} +{"ts":"2026-04-09T14:48:31.538Z","tool":"Bash","target":"grep -n \"'/together\" c:/Users/maita/posimai-project/server.js | head -20","ok":true} +{"ts":"2026-04-09T14:48:31.592Z","tool":"Bash","target":"grep -n \"together\" c:/Users/maita/posimai-project/server.js | grep \"r\\.\\(get\\|po","ok":true} +{"ts":"2026-04-09T14:48:58.405Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-09T14:49:04.340Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-09T14:49:15.473Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-09T14:49:25.300Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git add server.js && git commit -m \"fix: To","ok":true} +{"ts":"2026-04-09T14:49:45.610Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && bash deploy-server.sh 2>&1 | tail -10","ok":true} +{"ts":"2026-04-09T14:51:18.308Z","tool":"Bash","target":"wc -l c:/Users/maita/posimai-project/posimai-dev/server.js","ok":true} +{"ts":"2026-04-09T14:51:30.881Z","tool":"Bash","target":"wc -l c:/Users/maita/posimai-project/server.js","ok":true} +{"ts":"2026-04-09T14:51:46.580Z","tool":"Bash","target":"grep -c \"console\\.log\\|console\\.error\\|console\\.warn\" c:/Users/maita/posimai-pro","ok":true} +{"ts":"2026-04-09T22:53:44.779Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-09T22:53:50.280Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-09T22:53:51.275Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-09T22:53:53.556Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-09T22:53:54.587Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-09T22:53:55.635Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-09T22:53:59.888Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-09T22:54:01.010Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-09T22:54:05.497Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-09T22:54:06.550Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-09T22:54:10.742Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git diff --stat HEAD","ok":true} +{"ts":"2026-04-09T22:54:13.195Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git diff --stat","ok":true} +{"ts":"2026-04-09T22:54:15.924Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git status --short","ok":true} +{"ts":"2026-04-09T22:54:22.207Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git status --short posimai-dashboard/src/ap","ok":true} +{"ts":"2026-04-09T22:54:24.949Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git ls-files posimai-reader/index.html posi","ok":true} +{"ts":"2026-04-09T22:54:27.913Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git ls-files --error-unmatch posimai-reader","ok":true} +{"ts":"2026-04-09T22:54:32.041Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-reader/.git 2>/dev/null && echo \"has .","ok":true} +{"ts":"2026-04-09T22:54:41.676Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-reader && git add index.html && git co","ok":true} +{"ts":"2026-04-09T22:54:47.086Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-lens && git add index.html && git comm","ok":true} +{"ts":"2026-04-09T22:54:52.636Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-diff && git add index.html && git comm","ok":true} +{"ts":"2026-04-09T22:54:58.003Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-clean && git add index.html && git com","ok":true} +{"ts":"2026-04-09T22:55:07.826Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-dashboard && git add src/app/access/pa","ok":true} +{"ts":"2026-04-09T22:55:13.147Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git add server.js && git commit -m \"$(cat <","ok":true} +{"ts":"2026-04-09T22:55:36.020Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && bash deploy-server.sh 2>&1 | tail -10","ok":true} +{"ts":"2026-04-09T23:07:14.002Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && for dir in posimai-brain posimai-feed posim","ok":true} +{"ts":"2026-04-09T23:07:38.784Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/ponshu_room_lite/lib -type f -name \"*.dart\" ","ok":true} +{"ts":"2026-04-09T23:07:45.003Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/ponshu_room_lite/lib/providers -type f -name","ok":true} +{"ts":"2026-04-09T23:07:45.233Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/ponshu_room_lite/lib/models -type f -name \"*","ok":true} +{"ts":"2026-04-09T23:07:45.634Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/ponshu_room_lite/lib/screens -type f -name \"","ok":true} +{"ts":"2026-04-09T23:07:45.758Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/ponshu_room_lite/lib -type f -name \"secrets.","ok":true} +{"ts":"2026-04-09T23:07:48.771Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && for dir in posimai-brain posimai-feed posim","ok":true} +{"ts":"2026-04-09T23:08:01.166Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/ponshu_room_lite/lib/widgets -type d -name \"","ok":true} +{"ts":"2026-04-09T23:08:01.467Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/ponshu_room_lite/lib/widgets/gamification -t","ok":true} +{"ts":"2026-04-09T23:08:03.209Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/ponshu_room_lite/lib/services -type f -name ","ok":true} +{"ts":"2026-04-09T23:08:06.035Z","tool":"Bash","target":"grep -n \"lucide\" c:/Users/maita/posimai-project/posimai-atlas/index.html | head ","ok":true} +{"ts":"2026-04-09T23:08:23.791Z","tool":"Bash","target":"grep -n \"ignoring.*error\\|TODO\\|FIXME\\|XXX\\|HACK\\|BUG\\|ISSUE\" /c/Users/maita/pos","ok":true} +{"ts":"2026-04-09T23:08:23.965Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/_template/.git 2>/dev/null && echo \"has git\" |","ok":true} +{"ts":"2026-04-09T23:08:24.038Z","tool":"Bash","target":"grep -n \"ignoring.*error\\|TODO\\|FIXME\\|XXX\\|HACK\\|BUG\\|catch.*(_)\" /c/Users/mait","ok":true} +{"ts":"2026-04-09T23:08:27.166Z","tool":"Bash","target":"for dir in posimai-journal posimai-daily posimai-habit posimai-pulse posimai-roa","ok":true} +{"ts":"2026-04-09T23:08:48.065Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-09T23:08:54.089Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-09T23:08:55.029Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-09T23:09:01.032Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-09T23:09:12.132Z","tool":"Bash","target":"grep -n \"save()\\|\\.save(\" /c/Users/maita/posimai-project/ponshu_room_lite/lib/mo","ok":true} +{"ts":"2026-04-09T23:09:13.018Z","tool":"Bash","target":"grep -n '\\$i\\b' /c/Users/maita/posimai-project/ponshu_room_lite/lib/services/dra","ok":true} +{"ts":"2026-04-09T23:09:13.596Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/ponshu_room_lite/lib/secrets.dart","ok":true} +{"ts":"2026-04-09T23:09:18.068Z","tool":"Bash","target":"grep -n \"addObserver\\|removeObserver\\|onDispose\" /c/Users/maita/posimai-project/","ok":true} +{"ts":"2026-04-09T23:09:19.345Z","tool":"Bash","target":"grep -n \"imagePaths\\|getTemporaryDirectory\\|getApplicationDocuments\\|compressFor","ok":true} +{"ts":"2026-04-09T23:09:20.512Z","tool":"Bash","target":"grep -n \"migration_completed\\|migrationCompleted\\|MigrationService\" /c/Users/mai","ok":true} +{"ts":"2026-04-09T23:09:21.956Z","tool":"Bash","target":"python --version 2>&1; node --version 2>&1","ok":true} +{"ts":"2026-04-09T23:09:23.624Z","tool":"Bash","target":"# WidgetsBindingObserver が実際に正しく動作しているか確認\ncat /c/Users/maita/posimai-project/pon","ok":true} +{"ts":"2026-04-09T23:09:25.912Z","tool":"Bash","target":"# 再解析時の画像パスチェック確認\ngrep -n \"reanalyze\\|re_analyze\\|forceRefresh\\|imagePaths.isEmp","ok":true} +{"ts":"2026-04-09T23:09:26.759Z","tool":"Bash","target":"# migration バージョン管理の実態確認\ncat /c/Users/maita/posimai-project/ponshu_room_lite/lib","ok":true} +{"ts":"2026-04-09T23:09:30.138Z","tool":"Bash","target":"node -e \"\nconst fs = require('fs');\nconst path = require('path');\nconst apps = [","ok":true} +{"ts":"2026-04-09T23:09:33.179Z","tool":"Bash","target":"# 再解析時の画像存在チェックを確認(line 307以降)\nsed -n '307,355p' /c/Users/maita/posimai-project/","ok":true} +{"ts":"2026-04-09T23:09:35.664Z","tool":"Bash","target":"# 画像の実ファイル存在チェックの有無を確認\ngrep -n \"File.exists\\|File(\\|existsSync\\|exists()\" /c/Use","ok":true} +{"ts":"2026-04-09T23:09:36.498Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git add _template/index.html _template-mini","ok":true} +{"ts":"2026-04-09T23:09:47.834Z","tool":"Bash","target":"for dir in posimai-journal posimai-daily posimai-habit posimai-pulse posimai-roa","ok":true} +{"ts":"2026-04-09T23:10:55.129Z","tool":"Bash","target":"for dir in posimai-journal posimai-daily posimai-habit posimai-pulse posimai-roa","ok":true} +{"ts":"2026-04-09T23:10:59.820Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-store && git remote -v","ok":true} +{"ts":"2026-04-09T23:11:05.505Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-store && npm run deploy 2>&1 | grep \"T","ok":true} +{"ts":"2026-04-09T23:11:10.614Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-store && npm run deploy 2>&1 | tail -1","ok":true} +{"ts":"2026-04-09T23:11:18.241Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && npm run deploy 2>&1 | tail -5","ok":true} +{"ts":"2026-04-09T23:11:25.265Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && for dir in posimai-brain posimai-feed posim","ok":true} +{"ts":"2026-04-09T23:11:30.483Z","tool":"Bash","target":"grep -n \"font\\|Inter\\|Geist\\|googleapis\" c:/Users/maita/posimai-project/posimai-","ok":true} +{"ts":"2026-04-09T23:11:33.349Z","tool":"Bash","target":"grep -n \"body\\s*{\" c:/Users/maita/posimai-project/posimai-together/index.html | ","ok":true} +{"ts":"2026-04-09T23:11:49.734Z","tool":"Bash","target":"grep -n \"Inter\\|init_key\\|api_key\\|0\\.344\" c:/Users/maita/posimai-project/docs/n","ok":true} +{"ts":"2026-04-09T23:11:57.887Z","tool":"Edit","target":"design-system.md","ok":true} +{"ts":"2026-04-09T23:12:02.269Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/create-app.sh 2>/dev/null && head -50 c:/Users","ok":true} +{"ts":"2026-04-09T23:12:06.132Z","tool":"Bash","target":"cat c:/Users/maita/posimai-project/create-app.sh | tail -80","ok":true} +{"ts":"2026-04-09T23:12:24.116Z","tool":"Edit","target":"create-app.sh","ok":true} +{"ts":"2026-04-09T23:12:39.316Z","tool":"Bash","target":"grep -n \"Inter\\|Geist\\|font-family\" c:/Users/maita/posimai-project/posimai-ui/pu","ok":true} +{"ts":"2026-04-09T23:12:49.068Z","tool":"Edit","target":"base.css","ok":true} +{"ts":"2026-04-09T23:12:59.639Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-ui && git add public/v1/base.css && gi","ok":true} +{"ts":"2026-04-09T23:13:08.781Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git add docs/design-system.md create-app.sh","ok":true} +{"ts":"2026-04-09T23:20:57.763Z","tool":"Edit","target":"draft_service.dart","ok":true} +{"ts":"2026-04-09T23:21:21.055Z","tool":"Bash","target":"grep -n \"\\.displayData\\s*=\" /c/Users/maita/posimai-project/ponshu_room_lite/lib ","ok":true} +{"ts":"2026-04-09T23:21:25.355Z","tool":"Bash","target":"grep -n \"^// ──\\|^// ════\\|^// ---\\|^app\\.\\(get\\|post\\|put\\|delete\\|patch\\|use\\)","ok":true} +{"ts":"2026-04-09T23:21:29.121Z","tool":"Bash","target":"grep -n \"router\\.\\(get\\|post\\|put\\|delete\\|patch\\)\" c:/Users/maita/posimai-proje","ok":true} +{"ts":"2026-04-09T23:21:33.135Z","tool":"Bash","target":"grep -n \"router\\.\" c:/Users/maita/posimai-project/server.js | grep -E \"\\.get|\\.p","ok":true} +{"ts":"2026-04-09T23:21:36.368Z","tool":"Bash","target":"grep -n \"\\.get(\\|\\.post(\\|\\.put(\\|\\.delete(\\|\\.patch(\" c:/Users/maita/posimai-pr","ok":true} +{"ts":"2026-04-09T23:21:37.117Z","tool":"Edit","target":"sake_item.dart","ok":true} +{"ts":"2026-04-09T23:21:40.058Z","tool":"Bash","target":"grep -n \"\\.get(\\|\\.post(\\|\\.put(\\|\\.delete(\\|\\.patch(\" c:/Users/maita/posimai-pr","ok":true} +{"ts":"2026-04-09T23:21:43.654Z","tool":"Bash","target":"grep -n \"^// ──\\|^// ════\\|^ // ──\" c:/Users/maita/posimai-project/server.js ","ok":true} +{"ts":"2026-04-09T23:21:57.642Z","tool":"Bash","target":"grep -n \"^import\" /c/Users/maita/posimai-project/ponshu_room_lite/lib/screens/sa","ok":true} +{"ts":"2026-04-09T23:21:57.877Z","tool":"Bash","target":"# 各セクションの行数を計算\necho \"Line ranges per section:\"\necho \"L1-27: imports/setup\"\necho ","ok":true} +{"ts":"2026-04-09T23:22:06.678Z","tool":"Edit","target":"sake_detail_screen.dart","ok":true} +{"ts":"2026-04-09T23:22:07.484Z","tool":"Bash","target":"# 依存関係の整理: 各ルートが何の共有変数を使うか\ngrep -n \"pool\\|genAI\\|JWT_SECRET\\|authMiddleware\\|isS","ok":true} +{"ts":"2026-04-09T23:22:26.915Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/ponshu_room_lite/lib/secrets.local.dart 2>/dev","ok":true} +{"ts":"2026-04-09T23:22:36.741Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/ponshu_room_lite/lib/services/","ok":true} +{"ts":"2026-04-09T23:22:43.145Z","tool":"Write","target":"gemini_exceptions.dart","ok":true} +{"ts":"2026-04-09T23:22:51.487Z","tool":"Edit","target":"gemini_service.dart","ok":true} +{"ts":"2026-04-09T23:22:59.385Z","tool":"Edit","target":"gemini_service.dart","ok":true} +{"ts":"2026-04-09T23:23:10.166Z","tool":"Edit","target":"camera_screen.dart","ok":true} +{"ts":"2026-04-09T23:23:17.247Z","tool":"Edit","target":"camera_screen.dart","ok":true} +{"ts":"2026-04-09T23:23:24.821Z","tool":"Edit","target":"camera_screen.dart","ok":true} +{"ts":"2026-04-09T23:23:45.603Z","tool":"Bash","target":"grep -n \"_performSakenowaMatching\\|sakeListProvider\\|allSakeItemsProvider\\|inval","ok":true} +{"ts":"2026-04-09T23:23:51.395Z","tool":"Bash","target":"grep -n \"sakeListProvider\\|allSakeItemsProvider\\|invalidate\\|ref\\.refresh\" /c/Us","ok":true} +{"ts":"2026-04-09T23:23:54.912Z","tool":"Bash","target":"grep -n \"rawSakeItemsProvider\\|hiveBox\\|watchBox\\|listenable\" /c/Users/maita/pos","ok":true} +{"ts":"2026-04-09T23:24:14.733Z","tool":"Edit","target":"main.dart","ok":true} +{"ts":"2026-04-09T23:24:50.919Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/ponshu_room_lite && flutter analyze lib/ 2>&1 ","ok":true} +{"ts":"2026-04-09T23:24:56.377Z","tool":"Edit","target":"gemini_exceptions.dart","ok":true} +{"ts":"2026-04-09T23:25:09.935Z","tool":"Edit","target":"sake_detail_screen.dart","ok":true} +{"ts":"2026-04-09T23:25:10.050Z","tool":"Write","target":"server-refactor-plan.md","ok":true} +{"ts":"2026-04-09T23:25:14.708Z","tool":"Bash","target":"grep -n \"Navigator.of(context).pop\\|ScaffoldMessenger.of(context)\\|mounted\" /c/U","ok":true} +{"ts":"2026-04-09T23:25:25.474Z","tool":"Edit","target":"CLAUDE.md","ok":true} +{"ts":"2026-04-09T23:25:25.616Z","tool":"Edit","target":"sake_detail_screen.dart","ok":true} +{"ts":"2026-04-09T23:25:29.652Z","tool":"Bash","target":"grep -n \"disaster-recovery\" c:/Users/maita/posimai-project/AGENTS.md","ok":true} +{"ts":"2026-04-09T23:25:35.961Z","tool":"Edit","target":"AGENTS.md","ok":true} +{"ts":"2026-04-09T23:25:38.190Z","tool":"Bash","target":"flutter analyze lib/ 2>&1 | grep -E \"^ error|^ warning|^ info|No issues\" |","ok":true} +{"ts":"2026-04-09T23:25:48.548Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git add docs/server-refactor-plan.md CLAUDE","ok":true} +{"ts":"2026-04-09T23:25:48.848Z","tool":"Edit","target":"sake_detail_screen.dart","ok":true} +{"ts":"2026-04-09T23:26:00.364Z","tool":"Bash","target":"flutter analyze lib/ 2>&1 | grep -E \"^ error|^ warning|^ info|No issues\" |","ok":true} +{"ts":"2026-04-09T23:26:07.378Z","tool":"Edit","target":"sake_detail_screen.dart","ok":true} +{"ts":"2026-04-09T23:26:16.933Z","tool":"Bash","target":"flutter analyze lib/ 2>&1 | grep -E \"^ error|^ warning|^ info|No issues\" |","ok":true} +{"ts":"2026-04-09T23:26:26.204Z","tool":"Edit","target":"sake_detail_screen.dart","ok":true} +{"ts":"2026-04-09T23:26:35.101Z","tool":"Bash","target":"flutter analyze lib/ 2>&1 | grep -E \"^ error|^ warning|^ info|No issues\" |","ok":true} +{"ts":"2026-04-09T23:26:42.587Z","tool":"Bash","target":"flutter analyze lib/ 2>&1 | tail -5","ok":true} +{"ts":"2026-04-09T23:26:53.227Z","tool":"Bash","target":"git add \\\n lib/services/draft_service.dart \\\n lib/models/sake_item.dart \\\n li","ok":true} +{"ts":"2026-04-09T23:36:57.038Z","tool":"Bash","target":"bash build_4_apks.sh 2>&1 | grep -E \"\\[|Saved:|All 4|Error|Built|assembleRelease","ok":true} +{"ts":"2026-04-09T23:40:25.759Z","tool":"Bash","target":"bash build_4_apks.sh 2>&1 | grep -E \"\\[|Saved:|All 4|error|Built\"","ok":true} +{"ts":"2026-04-09T23:50:31.884Z","tool":"Bash","target":"while [ $(ls /c/Users/maita/posimai-project/ponshu_room_lite/build/apk_releases/","ok":true} +{"ts":"2026-04-10T00:00:35.855Z","tool":"Bash","target":"\\\nLATEST=$(ls build/apk_releases/ | tail -1) && \\\nwhile [ $(ls build/apk_release","ok":true} +{"ts":"2026-04-10T04:56:53.626Z","tool":"Bash","target":"find c:/Users/maita/posimai-project/supabase -type f | grep -v node_modules | he","ok":true} +{"ts":"2026-04-10T04:57:40.236Z","tool":"Bash","target":"grep -r \"supabase\\|SUPABASE\\|createClient\" c:/Users/maita/posimai-project --incl","ok":true} +{"ts":"2026-04-10T04:57:43.903Z","tool":"Bash","target":"find c:/Users/maita/posimai-project/supabase -type f | grep -v \".git\" | grep -v ","ok":true} +{"ts":"2026-04-10T04:57:45.445Z","tool":"Bash","target":"grep -n \"supabase\\|SUPABASE\" c:/Users/maita/posimai-project/posimai-together/sw.","ok":true} +{"ts":"2026-04-10T04:57:48.805Z","tool":"Bash","target":"grep -n \"supabase\\|SB_URL\\|SB_KEY\\|createClient\" c:/Users/maita/posimai-project/","ok":true} +{"ts":"2026-04-10T04:57:54.245Z","tool":"Bash","target":"grep -n \"supabase\\|SB_URL\\|SB_KEY\\|createClient\\|@supabase\" c:/Users/maita/posim","ok":true} +{"ts":"2026-04-10T04:57:57.081Z","tool":"Bash","target":"grep -in \"supabase\\|SB_URL\\|SB_KEY\" c:/Users/maita/posimai-project/posimai-toget","ok":true} +{"ts":"2026-04-10T04:58:00.535Z","tool":"Bash","target":"grep -ri \"supabase\\|SB_URL\\|SB_KEY\" c:/Users/maita/posimai-project/posimai-toget","ok":true} +{"ts":"2026-04-10T04:58:04.097Z","tool":"Bash","target":"grep -n \"supabase\\|SB_URL\\|SB_KEY\\|createClient\" c:/Users/maita/posimai-project/","ok":true} +{"ts":"2026-04-10T05:00:06.207Z","tool":"Write","target":"server-refactor-plan.md","ok":true} +{"ts":"2026-04-10T05:00:16.112Z","tool":"Bash","target":"git add docs/server-refactor-plan.md && git commit -m \"$(cat <<'EOF'\ndocs: merge","ok":true} +{"ts":"2026-04-10T05:00:26.148Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && npm run deploy 2>&1 | tail -5","ok":true} +{"ts":"2026-04-10T05:08:41.314Z","tool":"Bash","target":"grep -n \"supabase\" c:/Users/maita/posimai-project/posimai-dashboard/src/app/ecos","ok":true} +{"ts":"2026-04-10T05:08:50.641Z","tool":"Edit","target":"sw.js","ok":true} +{"ts":"2026-04-10T05:08:55.901Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-10T05:08:56.926Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-10T05:09:00.905Z","tool":"Bash","target":"grep -n \"supabase\\|together\" c:/Users/maita/posimai-project/posimai-dashboard/sr","ok":true} +{"ts":"2026-04-10T05:09:05.817Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/supabase/ | grep -v \".git\" | grep -v \".temp\"","ok":true} +{"ts":"2026-04-10T05:09:08.990Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/supabase/functions/","ok":true} +{"ts":"2026-04-10T05:09:13.663Z","tool":"Bash","target":"diff c:/Users/maita/posimai-project/supabase/functions/together-archive/index.ts","ok":true} +{"ts":"2026-04-10T05:10:32.268Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && ls -d posimai-*/","ok":true} +{"ts":"2026-04-10T05:10:56.230Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && grep -rn '@latest' posimai-*/index.html 2>/","ok":true} +{"ts":"2026-04-10T05:10:59.630Z","tool":"Bash","target":"rm -rf c:/Users/maita/posimai-project/supabase && echo \"deleted\"","ok":true} +{"ts":"2026-04-10T05:11:00.713Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && grep -rn 'unpkg.com\\|cdn.jsdelivr\\|cdnjs\\|s","ok":true} +{"ts":"2026-04-10T05:11:04.569Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && grep -rn 'lucide@' posimai-*/index.html 2>/","ok":true} +{"ts":"2026-04-10T05:11:10.102Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-together && git add sw.js && git commi","ok":true} +{"ts":"2026-04-10T05:11:19.047Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-dashboard && git add src/app/ecosystem","ok":true} +{"ts":"2026-04-10T05:11:23.671Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git status --short | grep -v \"^??\"","ok":true} +{"ts":"2026-04-10T05:11:30.603Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project\necho \"=== skipWaiting なし ===\"\nfor f in posimai","ok":true} +{"ts":"2026-04-10T05:11:36.197Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project\necho \"=== API key in frontend JS ===\"\ngrep -rn","ok":true} +{"ts":"2026-04-10T05:11:42.640Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project\necho \"=== var(--accent) 未使用・ハードコード色 ===\"\ngrep ","ok":true} +{"ts":"2026-04-10T05:11:52.447Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project\necho \"=== index.html に sw 登録なし ===\"\nfor d in p","ok":true} +{"ts":"2026-04-10T05:13:03.836Z","tool":"Edit","target":"sw.js","ok":true} +{"ts":"2026-04-10T05:13:06.097Z","tool":"Edit","target":"sw.js","ok":true} +{"ts":"2026-04-10T05:13:18.686Z","tool":"Edit","target":"sw.js","ok":true} +{"ts":"2026-04-10T05:13:19.730Z","tool":"Edit","target":"sw.js","ok":true} +{"ts":"2026-04-10T05:13:34.185Z","tool":"Bash","target":"grep -n 'serviceWorker\\|sw.js\\|' c:/Users/maita/posimai-project/posimai-a","ok":true} +{"ts":"2026-04-10T05:13:34.936Z","tool":"Bash","target":"grep -n 'serviceWorker\\|sw.js\\|' c:/Users/maita/posimai-project/posimai-t","ok":true} +{"ts":"2026-04-10T05:13:35.464Z","tool":"Bash","target":"grep -n 'target=\"_blank\"' c:/Users/maita/posimai-project/posimai-atlas/index.htm","ok":true} +{"ts":"2026-04-10T05:13:38.453Z","tool":"Bash","target":"sed -n '2520,2530p' c:/Users/maita/posimai-project/posimai-atlas/index.html","ok":true} +{"ts":"2026-04-10T05:14:03.053Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-10T05:14:04.098Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-10T05:14:17.285Z","tool":"Bash","target":"grep -n '#[0-9a-fA-F]\\{6\\}\\|#[0-9a-fA-F]\\{3\\}\\b' c:/Users/maita/posimai-project/","ok":true} +{"ts":"2026-04-10T05:14:18.097Z","tool":"Bash","target":"grep -n '#[0-9a-fA-F]\\{6\\}\\|#[0-9a-fA-F]\\{3\\}\\b' c:/Users/maita/posimai-project/","ok":true} +{"ts":"2026-04-10T05:14:25.672Z","tool":"Bash","target":"grep -n '\\-\\-accent\\|--blue\\|--indigo\\|--reading' c:/Users/maita/posimai-project","ok":true} +{"ts":"2026-04-10T05:15:06.574Z","tool":"Bash","target":"grep -n '\\-\\-' c:/Users/maita/posimai-project/posimai-brain/style.css | head -60","ok":true} +{"ts":"2026-04-10T05:15:28.943Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-10T05:15:33.216Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-10T05:15:37.214Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-10T05:15:42.539Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-10T05:15:47.292Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-10T05:16:08.659Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git submodule status | head -10 && cat .git","ok":true} +{"ts":"2026-04-10T05:16:11.979Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git status --short | grep 'posimai-log\\|pos","ok":true} +{"ts":"2026-04-10T05:16:22.487Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git ls-files | head -20 && echo \"...\" && gi","ok":true} +{"ts":"2026-04-10T05:16:32.090Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-ambient && git status --short && echo ","ok":true} +{"ts":"2026-04-10T05:16:32.671Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && git status --short && echo \"-","ok":true} +{"ts":"2026-04-10T05:16:36.231Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-think && git status --short && echo \"-","ok":true} +{"ts":"2026-04-10T05:16:39.258Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-log && git status --short","ok":true} +{"ts":"2026-04-10T05:16:49.351Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-ambient && git add sw.js index.html &&","ok":true} +{"ts":"2026-04-10T05:16:54.362Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && git add style.css && git comm","ok":true} +{"ts":"2026-04-10T05:16:59.571Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-think && git add index.html && git com","ok":true} +{"ts":"2026-04-10T05:17:08.589Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-atlas && git add sw.js && git commit -","ok":true} +{"ts":"2026-04-10T05:17:13.866Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-roadmap && git add sw.js && git commit","ok":true} +{"ts":"2026-04-10T05:17:19.062Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-log && git add sw.js && git commit -m ","ok":true} +{"ts":"2026-04-10T07:35:40.595Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/ponshu_room_lite && LATEST=$(ls build/apk_rele","ok":true} +{"ts":"2026-04-10T07:36:51.392Z","tool":"Bash","target":"grep -n \"skipWaiting\\|ambient\\|think\\|SW登録\\|brain.*style\\|ハードコード\" c:/Users/maita","ok":true} +{"ts":"2026-04-10T07:36:59.234Z","tool":"Bash","target":"# SW skipWaiting: ambient/atlas/log/roadmap の確認\nfor dir in posimai-ambient posim","ok":true} +{"ts":"2026-04-10T07:37:04.860Z","tool":"Bash","target":"# brain/style.css ハードコード色修正の確認\ngrep -n \"#[0-9a-fA-F]\\{3,6\\}\\|rgb(\" c:/Users/mait","ok":true} +{"ts":"2026-04-10T07:37:09.367Z","tool":"Bash","target":"# brain/style.css でトークン外の色が本文CSSに使われていないか\ngrep -n \"color:\\s*#\\|background:\\s*#\\|","ok":true} +{"ts":"2026-04-10T07:37:16.631Z","tool":"Bash","target":"sed -n '625,660p' c:/Users/maita/posimai-project/posimai-brain/style.css\nsed -n ","ok":true} +{"ts":"2026-04-10T07:37:21.636Z","tool":"Bash","target":"# Brain AI アイコン UX 改善の確認\ngrep -n \"ai.*icon\\|icon.*ai\\|AIアイコン\\|spinner\\|analyzing","ok":true} +{"ts":"2026-04-10T07:37:27.293Z","tool":"Bash","target":"# Brain SW v27 確認\ngrep -n \"CACHE\\|v27\\|v2[0-9]\" c:/Users/maita/posimai-project/p","ok":true} +{"ts":"2026-04-10T07:37:32.135Z","tool":"Bash","target":"grep -n \"fetch\\|API_URL\\|api\\.soar-enrich\\|localhost\" c:/Users/maita/posimai-pro","ok":true} +{"ts":"2026-04-10T07:37:35.098Z","tool":"Bash","target":"grep -n \"API_BASE\\|API_URL\" c:/Users/maita/posimai-project/posimai-habit/index.h","ok":true} +{"ts":"2026-04-10T07:37:40.393Z","tool":"Bash","target":"# 認証方式: habit は JWT か API Key か\ngrep -n \"Authorization\\|posimai_token\\|posimai_a","ok":true} +{"ts":"2026-04-10T07:37:54.342Z","tool":"Bash","target":"grep -n \"ai-pending-icon\\|sparkles\\|pending\" c:/Users/maita/posimai-project/posi","ok":true} +{"ts":"2026-04-10T07:37:57.648Z","tool":"Bash","target":"sed -n '578,605p' c:/Users/maita/posimai-project/posimai-brain/style.css","ok":true} +{"ts":"2026-04-10T07:38:46.528Z","tool":"Bash","target":"source .env\n\nLATEST_DIR=$(ls build/apk_releases/ | tail -1)\nOUTPUT_DIR=\"build/ap","ok":true} +{"ts":"2026-04-10T07:39:22.217Z","tool":"Bash","target":"LATEST_DIR=$(ls build/apk_releases/ | tail -1)\ngit tag -f \"v1.0.25\" HEAD && git ","ok":true} +{"ts":"2026-04-10T07:39:25.854Z","tool":"Edit","target":"releases.json","ok":true} +{"ts":"2026-04-10T07:39:31.989Z","tool":"Edit","target":"releases.json","ok":true} +{"ts":"2026-04-10T07:39:55.393Z","tool":"Bash","target":"git add web/download/releases.json && git commit -m \"chore: update download page","ok":true} +{"ts":"2026-04-10T07:40:05.756Z","tool":"Bash","target":"git config --global user.name && git config --global user.email && git config --","ok":true} +{"ts":"2026-04-10T08:08:10.520Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && cat posimai-dashboard/src/data/projects.jso","ok":true} +{"ts":"2026-04-10T08:08:10.679Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-dashboard/src/app/","ok":true} +{"ts":"2026-04-10T08:08:18.890Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && node -e \"const d=require('./posimai-dashboa","ok":true} +{"ts":"2026-04-10T08:08:26.629Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-atlas/ && echo \"---\" && ls c:/Users/ma","ok":true} +{"ts":"2026-04-10T08:08:30.715Z","tool":"Bash","target":"grep -n 'Supabase\\|supabase\\|Together.*移行\\|VPS.*移行\\|2026-03\\|2026-04-0[1-9]' c:/","ok":true} +{"ts":"2026-04-10T08:08:55.169Z","tool":"Bash","target":"grep -n 'Supabase\\|supabase\\|together.*移行\\|2026-04-0[1-5]\\|2026-03' c:/Users/mai","ok":true} +{"ts":"2026-04-10T08:09:25.590Z","tool":"Edit","target":"atlas.json","ok":true} +{"ts":"2026-04-10T08:09:35.355Z","tool":"Edit","target":"atlas.json","ok":true} +{"ts":"2026-04-10T08:09:40.387Z","tool":"Edit","target":"atlas.json","ok":true} +{"ts":"2026-04-10T08:09:45.256Z","tool":"Edit","target":"atlas.json","ok":true} +{"ts":"2026-04-10T08:09:57.960Z","tool":"Bash","target":"grep -n 'together\\|Supabase\\|supabase\\|lastUpdated\\|2026-04-0[1-5]' c:/Users/mai","ok":true} +{"ts":"2026-04-10T08:10:04.530Z","tool":"Edit","target":"projects.json","ok":true} +{"ts":"2026-04-10T08:10:13.419Z","tool":"Edit","target":"projects.json","ok":true} +{"ts":"2026-04-10T08:10:59.263Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-10T08:11:35.182Z","tool":"Write","target":"STATUS.md","ok":true} +{"ts":"2026-04-10T08:11:52.940Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-atlas && git add atlas.json && git com","ok":true} +{"ts":"2026-04-10T08:11:58.432Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-dashboard && git add src/data/projects","ok":true} +{"ts":"2026-04-10T08:12:04.105Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git add STATUS.md && git commit -m \"$(cat <","ok":true} +{"ts":"2026-04-10T08:49:10.727Z","tool":"Bash","target":"grep -n 'localStorage\\|habit\\|pulse' c:/Users/maita/posimai-project/posimai-habi","ok":true} +{"ts":"2026-04-10T08:49:11.137Z","tool":"Bash","target":"grep -n 'localStorage\\|setItem\\|getItem' c:/Users/maita/posimai-project/posimai-","ok":true} +{"ts":"2026-04-10T08:49:16.662Z","tool":"Bash","target":"grep -n \"posimai-habit-\\|habits\\|log\\|HABITS\\|API_BASE\\|fetch\\|api\" c:/Users/mai","ok":true} +{"ts":"2026-04-10T08:49:17.705Z","tool":"Bash","target":"grep -n \"posimai-pulse-\\|pulse\\|log\\|PULSE\\|API_BASE\\|fetch\\|api\" c:/Users/maita","ok":true} +{"ts":"2026-04-10T08:49:28.648Z","tool":"Bash","target":"grep -n 'API_BASE\\|localStorage.*habits\\|localStorage.*pulse.*log\\|fallback\\|!_a","ok":true} +{"ts":"2026-04-10T08:49:29.239Z","tool":"Bash","target":"grep -n 'API_BASE\\|localStorage.*pulse\\|fallback\\|!_apiKey' c:/Users/maita/posim","ok":true} +{"ts":"2026-04-10T08:49:32.303Z","tool":"Bash","target":"sed -n '500,520p' c:/Users/maita/posimai-project/posimai-habit/index.html","ok":true} +{"ts":"2026-04-10T09:01:59.186Z","tool":"Bash","target":"wc -l c:/Users/maita/posimai-project/posimai-habit/index.html c:/Users/maita/pos","ok":true} +{"ts":"2026-04-10T09:06:09.314Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-brief/ && ls c:/Users/maita/posimai-pr","ok":true} +{"ts":"2026-04-10T09:06:11.905Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-feed/","ok":true} +{"ts":"2026-04-10T09:06:15.331Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-feed/api/ && cat c:/Users/maita/posima","ok":true} +{"ts":"2026-04-10T09:06:25.653Z","tool":"Bash","target":"cat c:/Users/maita/posimai-project/posimai-feed/package.json && ls c:/Users/mait","ok":true} +{"ts":"2026-04-10T09:06:43.108Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-10T09:06:52.684Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brief && git add index.html && git com","ok":true} +{"ts":"2026-04-10T09:09:10.518Z","tool":"Bash","target":"git log --oneline -10 -- posimai-brain/ 2>/dev/null || echo \"no posimai-brain di","ok":true} +{"ts":"2026-04-10T09:09:26.189Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-brain && git log --oneline -10 2>/dev/","ok":true} +{"ts":"2026-04-10T09:09:37.545Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-brain/","ok":true} +{"ts":"2026-04-10T09:09:40.324Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-brain/js/","ok":true} +{"ts":"2026-04-10T09:09:43.257Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/posimai-brain/js/main.js | head -100","ok":true} +{"ts":"2026-04-10T09:09:43.439Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-brain/js/api/","ok":true} +{"ts":"2026-04-10T09:09:51.137Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/posimai-brain/js/main.js | grep -A 50 \"キーがある場","ok":true} +{"ts":"2026-04-10T09:09:56.968Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-dev/ 2>/dev/null || echo \"not found\"","ok":true} +{"ts":"2026-04-10T09:10:00.216Z","tool":"Bash","target":"grep -n \"brain\\|articles\\|session/verify\" /c/Users/maita/posimai-project/posimai","ok":true} +{"ts":"2026-04-10T09:10:02.832Z","tool":"Bash","target":"grep -rn \"brain\\|session/verify\\|articles\" /c/Users/maita/posimai-project/posima","ok":true} +{"ts":"2026-04-10T09:10:06.658Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/ | grep -v \"posimai-brain\\|node_modules\\|\\.git","ok":true} +{"ts":"2026-04-10T09:10:10.784Z","tool":"Bash","target":"grep -n \"brain\\|session/verify\\|/articles\" /c/Users/maita/posimai-project/server","ok":true} +{"ts":"2026-04-10T09:10:19.395Z","tool":"Bash","target":"grep -n \"authMiddleware\\|req.userId\\|user_id\" /c/Users/maita/posimai-project/ser","ok":true} +{"ts":"2026-04-10T09:10:45.817Z","tool":"Bash","target":"cat ~/.ssh/config 2>/dev/null | head -30; ls ~/.ssh/ 2>/dev/null","ok":true} +{"ts":"2026-04-10T09:10:53.988Z","tool":"Bash","target":"ssh soar-vps \"docker logs posimai-api-1 --tail 50 2>&1\" 2>&1","ok":true} +{"ts":"2026-04-10T09:10:59.504Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-clean/ && cat c:/Users/maita/posimai-p","ok":true} +{"ts":"2026-04-10T09:11:01.223Z","tool":"Bash","target":"grep -n \"jwt\\|JWT\\|expiresIn\\|sign(\" /c/Users/maita/posimai-project/server.js | ","ok":true} +{"ts":"2026-04-10T09:11:03.823Z","tool":"Bash","target":"cat c:/Users/maita/posimai-project/posimai-clean/index.html | grep -n \"localStor","ok":true} +{"ts":"2026-04-10T09:11:03.862Z","tool":"Bash","target":"grep -n \"JWT_TTL\\|jwt_ttl\" /c/Users/maita/posimai-project/server.js | head -10","ok":true} +{"ts":"2026-04-10T09:11:04.375Z","tool":"Bash","target":"# 他アプリ(briefなど)のauth gateと比較\ngrep -n \"localStorage.getItem\\|posimai_api_key\\|pos","ok":true} +{"ts":"2026-04-10T09:11:09.833Z","tool":"Bash","target":"ssh soar-vps \"docker exec posimai-db-1 psql -U posimai -d posimai_brain -c \\\"SEL","ok":true} +{"ts":"2026-04-10T09:11:10.890Z","tool":"Bash","target":"# dashboardがアプリを開く時のURLパラメータ処理を確認\ngrep -rn \"init_key\\|vercel\\.app\\|open.*app\\|ap","ok":true} +{"ts":"2026-04-10T09:11:14.845Z","tool":"Bash","target":"# dashboardのtimeline(アプリカード)でどうアプリを開くか確認\ngrep -n \"init_key\\|vercel.*app\\|token\\|","ok":true} +{"ts":"2026-04-10T09:11:15.427Z","tool":"Bash","target":"ssh soar-vps \"docker exec posimai-db-1 psql -U posimai -d posimai_brain -c \\\"SEL","ok":true} +{"ts":"2026-04-10T09:11:19.379Z","tool":"Bash","target":"# アプリカードの「アプリを開く」ボタンの実装を確認\ngrep -rn \"init_key\\|magic.*link\\|openApp\\|vercel\\.app","ok":true} +{"ts":"2026-04-10T09:11:22.337Z","tool":"Bash","target":"grep -rn \"init_key\\|magic.*link\\|AppCard\\|openApp\\|BentoCard\" c:/Users/maita/pos","ok":true} +{"ts":"2026-04-10T09:11:36.000Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/posimai-brain/js/utils/storage.js","ok":true} +{"ts":"2026-04-10T09:11:37.812Z","tool":"Bash","target":"# 他の動作するアプリ(brain)のauth gateを確認\ngrep -n \"token\\|init_key\\|URLSearchParams\\|local","ok":true} +{"ts":"2026-04-10T09:11:49.337Z","tool":"Bash","target":"grep -n \"KEY_MAP\\|pk_\" /c/Users/maita/posimai-project/server.js | head -20","ok":true} +{"ts":"2026-04-10T09:11:50.692Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-10T09:12:00.013Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-clean && git add index.html && git com","ok":true} +{"ts":"2026-04-10T09:13:35.300Z","tool":"Bash","target":"grep -n \"fetch\\|API\\|feed\\|article\\|loadArticles\\|init\\|onload\\|DOMContentLoaded","ok":true} +{"ts":"2026-04-10T09:13:41.401Z","tool":"Bash","target":"grep -n \"fetch\\|loadArticles\\|getArticles\\|API_BASE\\|api_key\\|token\\|brain/api\\|","ok":true} +{"ts":"2026-04-10T09:13:44.361Z","tool":"Bash","target":"wc -l c:/Users/maita/posimai-project/posimai-brain/index.html","ok":true} +{"ts":"2026-04-10T09:13:49.113Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-brain/ && cat c:/Users/maita/posimai-p","ok":true} +{"ts":"2026-04-10T09:13:51.473Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-brain/js/","ok":true} +{"ts":"2026-04-10T09:13:54.557Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-brain/js/api/ && ls c:/Users/maita/pos","ok":true} +{"ts":"2026-04-10T09:13:57.748Z","tool":"Bash","target":"grep -n \"fetch\\|API_BASE\\|api_key\\|token\\|articles\\|loadArticles\\|getArticles\" c","ok":true} +{"ts":"2026-04-10T09:14:45.588Z","tool":"Bash","target":"grep -n \"articles\\|user_id\\|jwt\\|Bearer\\|session\\|token\\|purchased\" c:/Users/mai","ok":true} +{"ts":"2026-04-10T09:14:55.940Z","tool":"Bash","target":"grep -n \"KEY_MAP\\|pk_\\|maita\" c:/Users/maita/posimai-project/server.js | head -3","ok":true} +{"ts":"2026-04-10T09:15:12.982Z","tool":"Bash","target":"grep -n \"google\\|oauth\\|OAuth\\|callback\\|posimaiproject\\|user_id.*insert\\|INSERT","ok":true} +{"ts":"2026-04-10T09:19:58.179Z","tool":"Bash","target":"grep -n 'habit\\|pulse' c:/Users/maita/posimai-project/server.js | grep -v '^\\s*/","ok":true} +{"ts":"2026-04-10T09:20:02.047Z","tool":"Bash","target":"sed -n '555,582p' c:/Users/maita/posimai-project/server.js","ok":true} +{"ts":"2026-04-10T09:20:02.524Z","tool":"Bash","target":"sed -n '1886,1940p' c:/Users/maita/posimai-project/server.js","ok":true} +{"ts":"2026-04-10T09:20:22.258Z","tool":"Bash","target":"grep -n 'posimai-auth-token\\|session/verify\\|authMiddleware\\|Authorization' c:/U","ok":true} +{"ts":"2026-04-10T09:20:26.475Z","tool":"Bash","target":"grep -n 'posimai-auth-token\\|getKey\\|localStorage.*token\\|session/verify\\|redire","ok":true} +{"ts":"2026-04-10T09:20:29.751Z","tool":"Bash","target":"grep -rn 'localStorage.*token\\|auth.*token\\|Authorization.*Bearer' c:/Users/mait","ok":true} +{"ts":"2026-04-10T09:20:31.181Z","tool":"Bash","target":"grep -rn \"localStorage.getItem.*token\\|localStorage.getItem.*jwt\\|localStorage.g","ok":true} +{"ts":"2026-04-10T09:20:57.379Z","tool":"Bash","target":"cat c:/Users/maita/posimai-project/deploy-server.sh | grep -i \"ssh\\|host\\|user\" ","ok":true} +{"ts":"2026-04-10T09:21:05.883Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o BatchMode=yes root@85.131.245.239 \"dock","ok":true} +{"ts":"2026-04-10T09:21:09.716Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o BatchMode=yes root@85.131.245.239 \"\ndoc","ok":true} +{"ts":"2026-04-10T09:21:15.454Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o BatchMode=yes root@85.131.245.239 \"\ndoc","ok":true} +{"ts":"2026-04-10T09:21:20.379Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o BatchMode=yes root@85.131.245.239 \"\ndoc","ok":true} +{"ts":"2026-04-10T09:21:23.861Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o BatchMode=yes root@85.131.245.239 \"\ndoc","ok":true} +{"ts":"2026-04-10T09:21:27.811Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o BatchMode=yes root@85.131.245.239 \"\ndoc","ok":true} +{"ts":"2026-04-10T09:21:31.585Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o BatchMode=yes root@85.131.245.239 \"\ndoc","ok":true} +{"ts":"2026-04-10T09:21:42.215Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-10T09:21:48.967Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-10T09:21:59.833Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-10T09:22:12.032Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-10T09:22:19.954Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-10T09:22:40.570Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-10T09:22:53.940Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-10T09:23:02.152Z","tool":"Edit","target":"sw.js","ok":true} +{"ts":"2026-04-10T09:24:07.467Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o BatchMode=yes root@85.131.245.239 \"\ndoc","ok":true} +{"ts":"2026-04-10T09:24:11.733Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o BatchMode=yes root@85.131.245.239 \"\ndoc","ok":true} +{"ts":"2026-04-10T09:24:15.794Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o BatchMode=yes root@85.131.245.239 \"\ndoc","ok":true} +{"ts":"2026-04-10T09:25:31.729Z","tool":"Edit","target":"sw.js","ok":true} +{"ts":"2026-04-10T09:25:37.834Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-10T09:25:44.317Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-10T09:25:52.596Z","tool":"Bash","target":"grep -n \"session/verify\\|purchased\\|purchased_at\" c:/Users/maita/posimai-project","ok":true} +{"ts":"2026-04-10T09:25:56.448Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-10T09:26:00.759Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o BatchMode=yes root@85.131.245.239 \"\ndoc","ok":true} +{"ts":"2026-04-10T09:26:00.924Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-10T09:26:04.944Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o BatchMode=yes root@85.131.245.239 \"\ndoc","ok":true} +{"ts":"2026-04-10T09:26:07.400Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-10T09:26:15.025Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-10T09:26:21.093Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-10T09:26:26.419Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-10T09:26:30.696Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-10T09:26:38.566Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-10T09:26:46.643Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-10T09:27:00.802Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-10T09:27:09.166Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-habit && git add index.html sw.js && g","ok":true} +{"ts":"2026-04-10T09:27:15.009Z","tool":"Bash","target":"git commit -m \"$(cat <<'EOF'\nfeat: JWT認証移行 + 習慣編集/削除機能追加\n\n- APIキー認証をJWT(posimai_","ok":true} +{"ts":"2026-04-10T09:27:23.332Z","tool":"Bash","target":"npm run deploy 2>&1","ok":true} +{"ts":"2026-04-10T09:27:32.911Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-pulse && git add index.html sw.js && g","ok":true} +{"ts":"2026-04-10T09:28:08.264Z","tool":"Bash","target":"grep -n \"brain\\|posimai-brain\" c:/Users/maita/posimai-project/docs/master-archit","ok":true} +{"ts":"2026-04-10T09:28:08.437Z","tool":"Bash","target":"grep -n \"brain\" c:/Users/maita/posimai-project/posimai-dashboard/src/data/projec","ok":true} +{"ts":"2026-04-10T09:28:14.078Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o BatchMode=yes root@85.131.245.239 \"ngin","ok":true} +{"ts":"2026-04-10T09:28:20.442Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o BatchMode=yes root@85.131.245.239 \"find","ok":true} +{"ts":"2026-04-10T09:28:25.004Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o BatchMode=yes root@85.131.245.239 \"cat ","ok":true} +{"ts":"2026-04-10T09:38:50.251Z","tool":"Bash","target":"ls -la c:/Users/maita/posimai-project/posimai-brain/logo.png && file c:/Users/ma","ok":true} +{"ts":"2026-04-10T09:56:15.471Z","tool":"Bash","target":"ls \"c:/Users/maita/business/\" 2>/dev/null | head -30","ok":true} +{"ts":"2026-04-10T09:56:18.374Z","tool":"Bash","target":"ls \"c:/Users/maita/business/monthly-dashboard/\" 2>/dev/null","ok":true} +{"ts":"2026-04-10T09:56:21.413Z","tool":"Bash","target":"ls \"c:/Users/maita/business/monthly-dashboard/app/\" 2>/dev/null && ls \"c:/Users/","ok":true} +{"ts":"2026-04-10T09:56:33.154Z","tool":"Bash","target":"ls \"c:/Users/maita/posimai-project/\" | grep \"posimai-\" | head -30","ok":true} +{"ts":"2026-04-10T09:56:36.755Z","tool":"Bash","target":"ls \"c:/Users/maita/posimai-project/posimai-ui/\" 2>/dev/null && echo \"---\" && ls ","ok":true} +{"ts":"2026-04-10T09:57:08.139Z","tool":"Bash","target":"ls \"c:/Users/maita/posimai-project/posimai-ui/public/\" 2>/dev/null && cat \"c:/Us","ok":true} +{"ts":"2026-04-10T09:57:11.466Z","tool":"Bash","target":"ls \"c:/Users/maita/posimai-project/posimai-ui/public/v1/\" 2>/dev/null && ls \"c:/","ok":true} +{"ts":"2026-04-10T09:58:26.403Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && vercel domains ls 2>/dev/null","ok":true} +{"ts":"2026-04-10T09:58:32.778Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && vercel project ls 2>/dev/null","ok":true} +{"ts":"2026-04-10T09:58:35.518Z","tool":"Bash","target":"cat c:/Users/maita/posimai-project/posimai-brain/.vercel/project.json 2>/dev/nul","ok":true} +{"ts":"2026-04-10T09:58:43.521Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-brain && vercel domains add brain.posi","ok":true} +{"ts":"2026-04-10T09:58:49.290Z","tool":"Bash","target":"grep -n \"CORS\\|cors\\|origin\\|soar-enrich\\|vercel\\.app\" c:/Users/maita/posimai-pr","ok":true} +{"ts":"2026-04-10T09:58:58.112Z","tool":"Edit","target":"projects.json","ok":true} +{"ts":"2026-04-10T09:59:04.045Z","tool":"Bash","target":"grep -n \"posimai\\.soar-enrich\\|vercel\\.app\\|login\\|redirect\" c:/Users/maita/posi","ok":true} +{"ts":"2026-04-10T09:59:17.501Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-dashboard && git add src/data/projects","ok":true} +{"ts":"2026-04-10T09:59:20.881Z","tool":"Bash","target":"curl -sI https://brain.posimai.soar-enrich.com | head -5","ok":true} +{"ts":"2026-04-10T10:04:06.874Z","tool":"Bash","target":"grep -n \"141729\\|0C1221\\|0F1117\\|0D1117\\|background\\|--bg\\|sidebar\" \"c:/Users/ma","ok":true} +{"ts":"2026-04-10T10:04:07.723Z","tool":"Bash","target":"grep -n \"background\\|--bg\\|sidebar-bg\\|body\\|#0\" \"c:/Users/maita/posimai-project","ok":true} +{"ts":"2026-04-10T10:04:11.076Z","tool":"Bash","target":"grep -n \"background\\|--bg\\|141729\\|0C1221\" \"c:/Users/maita/posimai-project/posim","ok":true} +{"ts":"2026-04-10T10:04:15.006Z","tool":"Bash","target":"find \"c:/Users/maita/posimai-project/posimai-station-app\" -name \"*.html\" -o -nam","ok":true} +{"ts":"2026-04-10T10:04:18.260Z","tool":"Bash","target":"grep -n \"bg\\|background\\|#0\\|#1\\|#2\" \"c:/Users/maita/posimai-project/posimai-sta","ok":true} +{"ts":"2026-04-10T10:05:49.382Z","tool":"Bash","target":"grep -n \"redirect\\|redirect_to\\|callbackUrl\" c:/Users/maita/posimai-project/posi","ok":true} +{"ts":"2026-04-10T10:06:04.671Z","tool":"Bash","target":"grep -n \"redirect\\|magic.link\\|send\\|redirect\" c:/Users/maita/posimai-project/po","ok":true} +{"ts":"2026-04-10T10:06:20.770Z","tool":"Bash","target":"grep -n \"magic-link/send\\|redirectUrl\\|redirect\\|verify.*token\\|DASHBOARD_URL\\|O","ok":true} +{"ts":"2026-04-10T10:06:28.239Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-10T10:06:33.486Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-10T10:06:43.284Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-10T10:06:48.428Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-10T10:06:58.010Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-dashboard && git add src/app/login/pag","ok":true} +{"ts":"2026-04-10T10:07:18.740Z","tool":"Bash","target":"bash c:/Users/maita/posimai-project/deploy-server.sh","ok":true} +{"ts":"2026-04-10T10:09:12.064Z","tool":"Bash","target":"grep -n \"stroke-width\\|lucide\\|font\\|Geist\\|Inter\" \"c:/Users/maita/posimai-proje","ok":true} +{"ts":"2026-04-10T10:09:13.016Z","tool":"Bash","target":"grep -rn \"stroke-width\\|w-4 h-4\\|w-5 h-5\\|Icon className\" \"c:/Users/maita/busine","ok":true} +{"ts":"2026-04-10T10:09:17.247Z","tool":"Bash","target":"grep -n \"stroke-width\\|font-family\\|font-size\\|Geist\\|antialiased\\|letter-spacin","ok":true} +{"ts":"2026-04-10T10:09:17.923Z","tool":"Bash","target":"grep -n \"stroke-width\" \"c:/Users/maita/posimai-project/posimai-brain/index.html\"","ok":true} +{"ts":"2026-04-10T10:09:21.052Z","tool":"Bash","target":"grep -n \"lucide\\|stroke\" \"c:/Users/maita/posimai-project/posimai-brain/style.css","ok":true} +{"ts":"2026-04-10T10:09:21.556Z","tool":"Bash","target":"grep -rn \"stroke-width\\|strokeWidth\" \"c:/Users/maita/business/monthly-dashboard/","ok":true} +{"ts":"2026-04-10T10:21:57.482Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-10T10:22:04.823Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-10T10:22:09.464Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-10T10:22:16.564Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-10T10:22:22.997Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-10T10:22:28.779Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-10T10:22:49.285Z","tool":"Edit","target":"style.css","ok":true} +{"ts":"2026-04-10T10:22:58.927Z","tool":"Edit","target":"sw.js","ok":true} +{"ts":"2026-04-10T10:23:03.125Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-10T10:23:17.009Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-brain && git add style.css index.html ","ok":true} +{"ts":"2026-04-10T14:21:34.541Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/ 2>/dev/null | head -30","ok":true} +{"ts":"2026-04-10T14:21:39.565Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-store/ 2>/dev/null","ok":true} +{"ts":"2026-04-10T14:25:39.901Z","tool":"Bash","target":"grep -n \"STRIPE\\|RESEND\\|stripe\\|resend\" c:/Users/maita/posimai-project/tools/sy","ok":true} +{"ts":"2026-04-10T14:25:45.000Z","tool":"Bash","target":"grep -rn \"STRIPE\\|RESEND\\|stripe_secret\\|resend\" c:/Users/maita/posimai-project/","ok":true} +{"ts":"2026-04-10T14:25:50.477Z","tool":"Bash","target":"grep -rn \"STRIPE\\|RESEND\" c:/Users/maita/posimai-project/posimai-dev/.env 2>/dev","ok":true} +{"ts":"2026-04-10T14:26:15.713Z","tool":"Bash","target":"grep -n \"redis\\|Redis\\|REDIS\" c:/Users/maita/posimai-project/server.js | head -2","ok":true} +{"ts":"2026-04-10T14:26:16.345Z","tool":"Bash","target":"grep -n \"STRIPE\\|RESEND\\|stripe\\|resend\" c:/Users/maita/posimai-project/posimai-","ok":true} +{"ts":"2026-04-10T14:26:22.707Z","tool":"Bash","target":"grep -n \"STRIPE\\|RESEND\\|stripe\\|resend\" c:/Users/maita/posimai-project/posimai-","ok":true} +{"ts":"2026-04-10T14:46:10.319Z","tool":"Edit","target":"license_provider.dart","ok":true} +{"ts":"2026-04-10T14:46:39.662Z","tool":"Edit","target":"license_service.dart","ok":true} +{"ts":"2026-04-10T14:46:49.393Z","tool":"Edit","target":"license_service.dart","ok":true} +{"ts":"2026-04-10T14:46:54.318Z","tool":"Edit","target":"license_service.dart","ok":true} +{"ts":"2026-04-10T14:47:00.373Z","tool":"Edit","target":"license_service.dart","ok":true} +{"ts":"2026-04-10T14:47:07.203Z","tool":"Edit","target":"license_service.dart","ok":true} +{"ts":"2026-04-10T14:47:24.919Z","tool":"Bash","target":"rm \"c:/Users/maita/posimai-project/ponshu_room_lite/lib/widgets/trial_status_ban","ok":true} +{"ts":"2026-04-10T14:47:35.771Z","tool":"Edit","target":"home_screen.dart","ok":true} +{"ts":"2026-04-10T14:47:40.322Z","tool":"Edit","target":"home_screen.dart","ok":true} +{"ts":"2026-04-10T14:47:53.590Z","tool":"Edit","target":"camera_screen.dart","ok":true} +{"ts":"2026-04-10T14:48:03.032Z","tool":"Edit","target":"camera_screen.dart","ok":true} +{"ts":"2026-04-10T14:48:14.855Z","tool":"Edit","target":"pending_analysis_screen.dart","ok":true} +{"ts":"2026-04-10T14:48:20.788Z","tool":"Edit","target":"pending_analysis_screen.dart","ok":true} +{"ts":"2026-04-10T14:48:36.267Z","tool":"Edit","target":"license_screen.dart","ok":true} +{"ts":"2026-04-10T14:48:49.481Z","tool":"Edit","target":"main_screen.dart","ok":true} +{"ts":"2026-04-10T14:49:11.114Z","tool":"Edit","target":"main_screen.dart","ok":true} +{"ts":"2026-04-10T14:49:16.493Z","tool":"Edit","target":"main_screen.dart","ok":true} +{"ts":"2026-04-10T14:49:22.976Z","tool":"Edit","target":"main_screen.dart","ok":true} +{"ts":"2026-04-10T14:49:42.745Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-10T14:49:55.170Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-10T14:49:59.462Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-10T14:50:15.336Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-10T14:50:27.115Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-10T14:50:34.449Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-10T14:50:48.006Z","tool":"Edit","target":".env.example","ok":true} +{"ts":"2026-04-10T14:52:24.710Z","tool":"Bash","target":"ls \"c:\\Users\\maita\\posimai-project\\posimai-together\\supabase\"","ok":true} +{"ts":"2026-04-10T14:52:40.111Z","tool":"Bash","target":"find \"c:\\Users\\maita\\posimai-project\\posimai-together\\supabase\" -type f","ok":true} +{"ts":"2026-04-10T14:52:57.825Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-10T14:53:10.875Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-10T14:53:18.925Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-10T14:53:23.487Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-10T14:53:47.045Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-10T14:53:53.270Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-10T14:53:57.432Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-10T14:54:10.756Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-10T14:54:35.859Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/ponshu-room/ 2>/dev/null | head -10; ls c:/Use","ok":true} +{"ts":"2026-04-10T14:54:39.926Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/ponshu-room/ 2>/dev/null","ok":true} +{"ts":"2026-04-10T14:56:08.688Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/ponshu_room_lite/web/download/","ok":true} +{"ts":"2026-04-10T14:56:08.739Z","tool":"Bash","target":"grep -n \"version\\|apk\\|download\\|APK\" c:/Users/maita/posimai-project/ponshu_room","ok":true} +{"ts":"2026-04-10T14:56:17.528Z","tool":"Bash","target":"grep -n \"version\\|v1\\.\" c:/Users/maita/posimai-project/ponshu_room_lite/android/","ok":true} +{"ts":"2026-04-10T14:56:18.123Z","tool":"Bash","target":"grep -n \"ponshu\\|license\\|webhook\" c:/Users/maita/posimai-project/server.js | gr","ok":true} +{"ts":"2026-04-10T14:56:22.732Z","tool":"Bash","target":"grep -n \"versionName\\|version:\" c:/Users/maita/posimai-project/ponshu_room_lite/","ok":true} +{"ts":"2026-04-10T14:59:30.463Z","tool":"Bash","target":"wc -l c:/Users/maita/posimai-project/server.js","ok":true} +{"ts":"2026-04-10T15:04:38.571Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && git status --short","ok":true} +{"ts":"2026-04-10T15:04:46.426Z","tool":"Bash","target":"rm -rf \"c:\\Users\\maita\\posimai-project\\posimai-together\\supabase\"","ok":true} +{"ts":"2026-04-10T15:05:06.185Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && git diff tools/proxy/packa","ok":true} +{"ts":"2026-04-10T15:05:07.661Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && git diff lib/main.dart","ok":true} +{"ts":"2026-04-10T15:05:08.827Z","tool":"Bash","target":"git add server.js posimai-atlas/index.html && git status","ok":true} +{"ts":"2026-04-10T15:05:12.303Z","tool":"Bash","target":"git -C posimai-atlas status","ok":true} +{"ts":"2026-04-10T15:05:13.416Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && git diff android/app/build","ok":true} +{"ts":"2026-04-10T15:05:18.645Z","tool":"Bash","target":"git commit -m \"$(cat <<'EOF'\nfix: security — invite_code leakage, Atlas token in","ok":true} +{"ts":"2026-04-10T15:05:24.346Z","tool":"Bash","target":"git -C posimai-atlas add index.html && git -C posimai-atlas commit -m \"$(cat <<'","ok":true} +{"ts":"2026-04-10T15:05:30.177Z","tool":"Edit","target":"package.json","ok":true} +{"ts":"2026-04-10T15:05:33.660Z","tool":"Bash","target":"npm run deploy 2>&1 | tail -5","ok":true} +{"ts":"2026-04-10T15:05:38.512Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && git add \\\n lib/main.dart ","ok":true} +{"ts":"2026-04-10T15:05:53.884Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/ponshu_room_lite && git add tools/proxy/packag","ok":true} +{"ts":"2026-04-10T15:05:54.795Z","tool":"Bash","target":"bash deploy-server.sh 2>&1 | tail -8","ok":true} +{"ts":"2026-04-10T15:06:02.981Z","tool":"Bash","target":"git -C posimai-atlas remote -v && git -C posimai-atlas push 2>&1 | tail -4","ok":true} +{"ts":"2026-04-10T15:06:06.208Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git log --oneline -3","ok":true} +{"ts":"2026-04-10T15:06:11.863Z","tool":"Bash","target":"git -C posimai-atlas push gitea main && git -C posimai-atlas push github main 2>","ok":true} +{"ts":"2026-04-10T15:13:31.944Z","tool":"Write","target":"ponshu.js","ok":true} +{"ts":"2026-04-10T15:14:16.384Z","tool":"Write","target":"stripe.js","ok":true} +{"ts":"2026-04-10T15:14:39.053Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-10T15:15:01.897Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-10T15:15:21.392Z","tool":"Edit","target":"secrets.dart","ok":true} +{"ts":"2026-04-10T15:15:37.769Z","tool":"Edit","target":"license_service.dart","ok":true} +{"ts":"2026-04-10T15:15:45.671Z","tool":"Edit","target":"license_service.dart","ok":true} +{"ts":"2026-04-10T15:15:59.777Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-10T15:16:13.684Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-10T15:16:32.316Z","tool":"Bash","target":"git status --short","ok":true} +{"ts":"2026-04-10T15:16:33.732Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/ponshu_room_lite && git status --short","ok":true} +{"ts":"2026-04-10T15:16:52.751Z","tool":"Bash","target":"git add lib/secrets.dart lib/services/license_service.dart tools/proxy/server.js","ok":true} +{"ts":"2026-04-10T15:16:57.948Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project && git add server.js routes/ponshu.js routes/s","ok":true} +{"ts":"2026-04-10T15:17:19.793Z","tool":"Bash","target":"bash deploy-server.sh 2>&1","ok":true} +{"ts":"2026-04-10T15:17:28.849Z","tool":"Edit","target":"deploy-server.sh","ok":true} +{"ts":"2026-04-10T15:17:42.523Z","tool":"Bash","target":"bash deploy-server.sh 2>&1","ok":true} +{"ts":"2026-04-10T15:17:50.052Z","tool":"Bash","target":"ssh -i \"$HOME/.ssh/soar-enrich-openssh.pem\" -o BatchMode=yes root@85.131.245.239","ok":true} +{"ts":"2026-04-10T15:17:55.014Z","tool":"Bash","target":"ssh -i \"$HOME/.ssh/soar-enrich-openssh.pem\" -o BatchMode=yes root@85.131.245.239","ok":true} +{"ts":"2026-04-10T15:18:00.225Z","tool":"Bash","target":"ssh -i \"$HOME/.ssh/soar-enrich-openssh.pem\" -o BatchMode=yes root@85.131.245.239","ok":true} +{"ts":"2026-04-10T15:18:06.562Z","tool":"Bash","target":"ssh -i \"$HOME/.ssh/soar-enrich-openssh.pem\" -o BatchMode=yes root@85.131.245.239","ok":true} +{"ts":"2026-04-10T15:18:18.265Z","tool":"Bash","target":"ssh -i \"$HOME/.ssh/soar-enrich-openssh.pem\" -o BatchMode=yes root@85.131.245.239","ok":true} +{"ts":"2026-04-10T15:18:31.334Z","tool":"Bash","target":"ssh -i \"$HOME/.ssh/soar-enrich-openssh.pem\" -o BatchMode=yes root@85.131.245.239","ok":true} +{"ts":"2026-04-10T15:18:41.497Z","tool":"Bash","target":"ssh -i \"$HOME/.ssh/soar-enrich-openssh.pem\" -o BatchMode=yes root@85.131.245.239","ok":true} +{"ts":"2026-04-10T15:19:00.392Z","tool":"Bash","target":"ssh -i \"$HOME/.ssh/soar-enrich-openssh.pem\" -o BatchMode=yes root@85.131.245.239","ok":true} +{"ts":"2026-04-10T15:19:05.468Z","tool":"Bash","target":"git add deploy-server.sh && git commit -m \"$(cat <<'EOF'\nchore: deploy-server.sh","ok":true} +{"ts":"2026-04-10T15:20:05.812Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/ponshu_room_lite && flutter build apk --releas","ok":true} +{"ts":"2026-04-10T15:20:30.413Z","tool":"Bash","target":"flutter build apk --release --dart-define=POSIMAI_BASE_URL=https://api.soar-enri","ok":true} +{"ts":"2026-04-10T15:20:38.003Z","tool":"Edit","target":"home_screen.dart","ok":true} +{"ts":"2026-04-10T15:21:51.270Z","tool":"Bash","target":"flutter build apk --release --dart-define=POSIMAI_BASE_URL=https://api.soar-enri","ok":true} +{"ts":"2026-04-10T15:21:56.686Z","tool":"Bash","target":"ls build/app/outputs/flutter-apk/app-release.apk && ls -lh build/app/outputs/flu","ok":true} +{"ts":"2026-04-10T15:22:05.179Z","tool":"Bash","target":"cat pubspec.yaml | grep \"^version:\"","ok":true} +{"ts":"2026-04-10T15:22:20.794Z","tool":"Bash","target":"grep -n \"v1\\.\" web/download/index.html | head -10","ok":true} +{"ts":"2026-04-10T15:22:48.377Z","tool":"Bash","target":"grep -n \"v1\\.\\|version\" web/download/index.html | head -15","ok":true} +{"ts":"2026-04-10T15:23:05.225Z","tool":"Edit","target":"pubspec.yaml","ok":true} +{"ts":"2026-04-10T15:23:30.149Z","tool":"Write","target":"releases.json","ok":true} +{"ts":"2026-04-10T15:23:37.123Z","tool":"Bash","target":"git add pubspec.yaml lib/screens/home_screen.dart web/download/releases.json && ","ok":true} +{"ts":"2026-04-10T21:40:33.750Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project && node --check routes/ponshu.js && node --che","ok":true} +{"ts":"2026-04-10T21:40:38.335Z","tool":"Bash","target":"grep -n \"FROM_EMAIL\\|APP_SUPPORT_EMAIL\\|STRIPE_WEBHOOK_SECRET\" /c/Users/maita/po","ok":true} +{"ts":"2026-04-10T21:40:39.545Z","tool":"Bash","target":"grep -n \"license_key\\|ponshu\" /c/Users/maita/posimai-project/ponshu_room_lite/li","ok":true} +{"ts":"2026-04-10T21:40:44.186Z","tool":"Bash","target":"grep -n \"randomBytes(6)\" /c/Users/maita/posimai-project/routes/stripe.js","ok":true} +{"ts":"2026-04-10T21:41:34.569Z","tool":"Edit","target":"license_service.dart","ok":true} +{"ts":"2026-04-10T21:41:42.235Z","tool":"Edit","target":"license_service.dart","ok":true} +{"ts":"2026-04-10T21:41:56.203Z","tool":"Edit","target":"ponshu.js","ok":true} +{"ts":"2026-04-10T21:42:03.646Z","tool":"Edit","target":"license_screen.dart","ok":true} +{"ts":"2026-04-10T21:42:13.729Z","tool":"Bash","target":"ssh -i \"$HOME/.ssh/soar-enrich-openssh.pem\" -o BatchMode=yes root@85.131.245.239","ok":true} +{"ts":"2026-04-10T21:42:26.229Z","tool":"Edit","target":"license_service.dart","ok":true} +{"ts":"2026-04-10T21:42:35.893Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/ponshu_room_lite && git add lib/services/licen","ok":true} +{"ts":"2026-04-10T21:43:01.000Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project && git add routes/ponshu.js && git commit -m \"","ok":true} +{"ts":"2026-04-10T22:43:20.088Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/ponshu_room_lite/","ok":true} +{"ts":"2026-04-10T22:43:23.624Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/ponshu_room_lite/lib/ && echo \"---\" && ls c:/U","ok":true} +{"ts":"2026-04-10T22:43:26.380Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/ponshu_room_lite/lib/screens/ && echo \"---\" &&","ok":true} +{"ts":"2026-04-10T22:43:28.468Z","tool":"Bash","target":"cat c:/Users/maita/posimai-project/ponshu_room_lite/lib/services/license_service","ok":true} +{"ts":"2026-04-10T22:43:32.155Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/ponshu_room_lite/lib/screens/features/ 2>/dev/","ok":true} +{"ts":"2026-04-10T22:43:34.344Z","tool":"Bash","target":"cat c:/Users/maita/posimai-project/ponshu_room_lite/lib/screens/license_screen.d","ok":true} +{"ts":"2026-04-10T22:43:36.910Z","tool":"Bash","target":"cat c:/Users/maita/posimai-project/ponshu_room_lite/lib/providers/license_provid","ok":true} +{"ts":"2026-04-10T22:43:55.313Z","tool":"Bash","target":"# VPS server code - look for the license endpoint\nfind /c/Users/maita/posimai-pr","ok":true} +{"ts":"2026-04-10T22:43:57.700Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -maxdepth 3 -name \"server.js\" 2>/dev/null | ","ok":true} +{"ts":"2026-04-10T22:43:59.930Z","tool":"Bash","target":"grep -n \"ponshu\" /c/Users/maita/posimai-project/server.js | head -60","ok":true} +{"ts":"2026-04-10T22:44:07.398Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -path \"*/routes/ponshu.js\" 2>/dev/null","ok":true} +{"ts":"2026-04-10T22:44:09.217Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/routes/ponshu.js","ok":true} +{"ts":"2026-04-10T22:44:12.206Z","tool":"Bash","target":"# Look for Stripe/purchase handling\ngrep -n \"stripe\\|ponshu\\|handlePosi\\|purchas","ok":true} +{"ts":"2026-04-10T22:44:20.797Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -path \"*/routes/stripe.js\" 2>/dev/null","ok":true} +{"ts":"2026-04-10T22:44:25.424Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/routes/stripe.js","ok":true} +{"ts":"2026-04-10T22:44:31.134Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/ponshu_room_lite/lib/services/device_service.","ok":true} +{"ts":"2026-04-10T22:44:35.589Z","tool":"Bash","target":"# Check the analysis limit / rate limiting logic\ngrep -n \"limit\\|rate\\|50\\|daily","ok":true} +{"ts":"2026-04-10T22:44:41.049Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/ponshu_room_lite/lib/services/gemini_service.","ok":true} +{"ts":"2026-04-10T22:44:46.805Z","tool":"Bash","target":"# Check the AI proxy server for rate limiting, and device_id tracking\ngrep -n \"d","ok":true} +{"ts":"2026-04-10T22:44:51.498Z","tool":"Bash","target":"# Find the AI proxy endpoint for Ponshu\ngrep -n \"ponshu\\|sake\\|analyze\\|ai-proxy","ok":true} +{"ts":"2026-04-10T22:44:56.971Z","tool":"Bash","target":"# Find the AI proxy for Ponshu's image analysis endpoint\ngrep -n \"ponshu\\|sake_a","ok":true} +{"ts":"2026-04-10T22:44:59.500Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/ponshu_room_lite/lib/secrets.dart","ok":true} +{"ts":"2026-04-10T22:45:03.986Z","tool":"Bash","target":"# Check the AI proxy server on posimai-dev\ncat /c/Users/maita/posimai-project/po","ok":true} +{"ts":"2026-04-10T22:45:51.279Z","tool":"Bash","target":"# Find the actual AI proxy server for sake label analysis\nfind /c/Users/maita/po","ok":true} +{"ts":"2026-04-10T22:46:17.943Z","tool":"Bash","target":"# Find the AI proxy that handles image analysis (the one on NAS port 8080)\nfind ","ok":true} +{"ts":"2026-04-10T22:46:20.973Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/ponshu_room_lite/tools/synology/ai-proxy/serv","ok":true} +{"ts":"2026-04-10T22:46:26.017Z","tool":"Bash","target":"# Check main.dart and how license is used at startup\ncat /c/Users/maita/posimai-","ok":true} +{"ts":"2026-04-10T22:46:30.033Z","tool":"Bash","target":"# Check how isPro is used / gated in features\ngrep -rn \"isPro\\|isProProvider\\|li","ok":true} +{"ts":"2026-04-10T22:46:59.482Z","tool":"Bash","target":"# Check the store URL TODO, and the Stripe checkout session setup\ngrep -rn \"posi","ok":true} +{"ts":"2026-04-10T22:47:04.061Z","tool":"Bash","target":"grep -rn \"posimai-store\\|storeUrl\\|TODO.*store\\|TODO.*url\" /c/Users/maita/posima","ok":true} +{"ts":"2026-04-10T22:47:08.528Z","tool":"Bash","target":"grep -n \"ponshu_licenses\" /c/Users/maita/posimai-project/server.js -A 15 | head ","ok":true} +{"ts":"2026-04-10T22:47:12.746Z","tool":"Bash","target":"# Check if there's a Stripe checkout session creation endpoint for Ponshu\ngrep -","ok":true} +{"ts":"2026-04-10T22:47:29.384Z","tool":"Bash","target":"# Check for Stripe checkout session creation\ngrep -rn \"checkout\\|sessions.create","ok":true} +{"ts":"2026-04-10T22:47:39.397Z","tool":"Bash","target":"# Look for the posimai-store app\nls /c/Users/maita/posimai-project/posimai-store","ok":true} +{"ts":"2026-04-10T22:47:44.226Z","tool":"Bash","target":"grep -n \"stripe\\|price_id\\|ponshu\\|metadata\\|payment\" /c/Users/maita/posimai-pro","ok":true} +{"ts":"2026-04-10T22:47:48.280Z","tool":"Bash","target":"grep -n \"metadata\\|ponshu_room_pro\\|product\" /c/Users/maita/posimai-project/posi","ok":true} +{"ts":"2026-04-10T22:47:52.669Z","tool":"Bash","target":"# Check if the Stripe payment link has the metadata.product = 'ponshu_room_pro' ","ok":true} +{"ts":"2026-04-10T22:47:59.401Z","tool":"Bash","target":"# Check the cache expiry bug more carefully \n# In _getCachedStatus, the conditio","ok":true} +{"ts":"2026-04-10T22:48:05.642Z","tool":"Bash","target":"# Check if CORS is properly locked down on the AI proxy (only home network shoul","ok":true} +{"ts":"2026-04-10T22:48:10.277Z","tool":"Bash","target":"# Check home_screen and feature gating more carefully\ncat /c/Users/maita/posimai","ok":true} +{"ts":"2026-04-10T22:48:15.013Z","tool":"Bash","target":"sed -n '100,220p' /c/Users/maita/posimai-project/ponshu_room_lite/lib/screens/ma","ok":true} +{"ts":"2026-04-10T22:48:20.117Z","tool":"Bash","target":"# Check the splash screen - does it wait for license check?\ncat /c/Users/maita/p","ok":true} +{"ts":"2026-04-10T22:48:24.779Z","tool":"Bash","target":"# Check camera screen - AI analysis gating\ngrep -n \"isPro\\|isProVersion\\|license","ok":true} +{"ts":"2026-04-10T22:48:32.809Z","tool":"Bash","target":"# The camera screen doesn't gate on Pro? Let me check the features list more car","ok":true} +{"ts":"2026-04-10T22:48:38.982Z","tool":"Bash","target":"# Check the docker-compose for the AI proxy\ncat /c/Users/maita/posimai-project/p","ok":true} +{"ts":"2026-04-10T22:48:42.657Z","tool":"Bash","target":"# Check pubspec.yaml for dependencies\ncat /c/Users/maita/posimai-project/ponshu_","ok":true} +{"ts":"2026-04-10T22:48:47.510Z","tool":"Bash","target":"# Check if lucide_icons is pinned to 0.344.0 (CLAUDE.md requires it)\ngrep \"lucid","ok":true} +{"ts":"2026-04-10T22:48:53.459Z","tool":"Bash","target":"# Check the web store - is there a Stripe product/payment link with correct meta","ok":true} +{"ts":"2026-04-10T22:49:01.575Z","tool":"Bash","target":"# Check the .env.example for VPS configuration\ncat /c/Users/maita/posimai-projec","ok":true} +{"ts":"2026-04-10T23:11:29.382Z","tool":"Write","target":"device_service.dart","ok":true} +{"ts":"2026-04-10T23:11:37.780Z","tool":"Edit","target":"license_service.dart","ok":true} +{"ts":"2026-04-10T23:11:42.201Z","tool":"Edit","target":"sake_mbti_stamp_section.dart","ok":true} +{"ts":"2026-04-10T23:11:47.092Z","tool":"Edit","target":"sake_mbti_stamp_section.dart","ok":true} +{"ts":"2026-04-10T23:11:51.881Z","tool":"Edit","target":"sake_mbti_stamp_section.dart","ok":true} +{"ts":"2026-04-10T23:11:55.995Z","tool":"Edit","target":"sake_detail_screen.dart","ok":true} +{"ts":"2026-04-10T23:12:12.836Z","tool":"Edit","target":"sake_detail_screen.dart","ok":true} +{"ts":"2026-04-10T23:12:17.495Z","tool":"Edit","target":"sake_detail_screen.dart","ok":true} +{"ts":"2026-04-10T23:14:26.681Z","tool":"Bash","target":"flutter build apk --release --dart-define=POSIMAI_BASE_URL=https://api.soar-enri","ok":true} +{"ts":"2026-04-10T23:14:37.338Z","tool":"Bash","target":"git add lib/services/device_service.dart lib/services/license_service.dart lib/s","ok":true} +{"ts":"2026-04-10T23:17:54.718Z","tool":"Bash","target":"git log --oneline -10 -- web/download/ releases.json 2>/dev/null; git log --onel","ok":true} +{"ts":"2026-04-10T23:18:07.194Z","tool":"Bash","target":"git show 2b90756 --stat","ok":true} +{"ts":"2026-04-10T23:18:49.145Z","tool":"Bash","target":"ls build/apk_releases/ 2>/dev/null | head -5; echo \"---\"; ls build/app/outputs/f","ok":true} +{"ts":"2026-04-10T23:20:48.972Z","tool":"Bash","target":"flutter build apk --release \\\n --dart-define=GEMINI_API_KEY=AIzaSyBEwmTa9_2aiRr","ok":true} +{"ts":"2026-04-10T23:20:54.928Z","tool":"Bash","target":"mkdir -p build/apk_releases/2026-04-11_release && \\\ncp build/app/outputs/flutter","ok":true} +{"ts":"2026-04-10T23:22:11.013Z","tool":"Bash","target":"flutter build apk --release \\\n --dart-define=GEMINI_API_KEY=AIzaSyDjPZGOHy-xAst","ok":true} +{"ts":"2026-04-10T23:22:19.559Z","tool":"Edit","target":"release_to_gitea.ps1","ok":true} +{"ts":"2026-04-10T23:22:30.474Z","tool":"Edit","target":"release_to_gitea.ps1","ok":true} +{"ts":"2026-04-10T23:23:04.187Z","tool":"Bash","target":"powershell -ExecutionPolicy Bypass -File release_to_gitea.ps1 -ApkDir \"build/apk","ok":true} +{"ts":"2026-04-10T23:23:11.274Z","tool":"Bash","target":"git add web/download/releases.json release_to_gitea.ps1 && git commit -m \"$(cat ","ok":true} +{"ts":"2026-04-10T23:55:04.221Z","tool":"Edit","target":"gemini_service.dart","ok":true} +{"ts":"2026-04-10T23:55:11.388Z","tool":"Edit","target":"gemini_service.dart","ok":true} +{"ts":"2026-04-10T23:55:23.626Z","tool":"Edit","target":"gemini_service.dart","ok":true} +{"ts":"2026-04-10T23:56:37.202Z","tool":"Bash","target":"flutter build apk --release --dart-define=GEMINI_API_KEY=AIzaSyBEwmTa9_2aiRrwr1m","ok":true} +{"ts":"2026-04-10T23:57:45.579Z","tool":"Bash","target":"cp build/app/outputs/flutter-apk/app-release.apk build/apk_releases/2026-04-11_r","ok":true} +{"ts":"2026-04-10T23:57:50.021Z","tool":"Bash","target":"cp build/app/outputs/flutter-apk/app-release.apk build/apk_releases/2026-04-11_r","ok":true} +{"ts":"2026-04-10T23:57:55.291Z","tool":"Bash","target":"sed -i 's/version: 1.0.26+33/version: 1.0.27+34/' pubspec.yaml && grep \"^version","ok":true} +{"ts":"2026-04-10T23:58:02.689Z","tool":"Bash","target":"git add lib/services/gemini_service.dart pubspec.yaml && git commit -m \"$(cat <<","ok":true} +{"ts":"2026-04-10T23:58:38.035Z","tool":"Bash","target":"powershell -ExecutionPolicy Bypass -File release_to_gitea.ps1 -ApkDir \"build/apk","ok":true} +{"ts":"2026-04-10T23:58:43.231Z","tool":"Bash","target":"git add web/download/releases.json && git commit -m \"$(cat <<'EOF'\nchore: update","ok":true} +{"ts":"2026-04-11T00:16:16.329Z","tool":"Edit","target":"gemini_service.dart","ok":true} +{"ts":"2026-04-11T00:16:24.387Z","tool":"Edit","target":"main.dart","ok":true} +{"ts":"2026-04-11T00:17:41.051Z","tool":"Bash","target":"flutter build apk --release --dart-define=GEMINI_API_KEY=AIzaSyBEwmTa9_2aiRrwr1m","ok":true} +{"ts":"2026-04-11T00:17:59.774Z","tool":"Bash","target":"ls c:\\Users\\maita\\posimai-project\\posimai-brain/src/ 2>/dev/null | head -30","ok":true} +{"ts":"2026-04-11T00:18:54.539Z","tool":"Bash","target":"cp build/app/outputs/flutter-apk/app-release.apk build/apk_releases/2026-04-11_r","ok":true} +{"ts":"2026-04-11T00:19:03.454Z","tool":"Bash","target":"sed -i 's/version: 1.0.27+34/version: 1.0.28+35/' pubspec.yaml && \\\ngit add lib/","ok":true} +{"ts":"2026-04-11T00:19:31.973Z","tool":"Bash","target":"powershell -ExecutionPolicy Bypass -File release_to_gitea.ps1 -ApkDir \"build/apk","ok":true} +{"ts":"2026-04-11T00:21:45.278Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/ | grep -E \"^_template\"","ok":true} +{"ts":"2026-04-11T00:21:47.769Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/_template/ && echo \"---\" && ls c:/Users/maita/","ok":true} +{"ts":"2026-04-11T00:22:06.960Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-ui/","ok":true} +{"ts":"2026-04-11T00:22:08.925Z","tool":"Bash","target":"# 直近のアプリのSWを確認(skipWaitingが入ったかどうか)\ngrep -l \"skipWaiting\" c:/Users/maita/posimai","ok":true} +{"ts":"2026-04-11T00:22:11.218Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-ui/public/","ok":true} +{"ts":"2026-04-11T00:22:13.777Z","tool":"Bash","target":"# _templateのindex.htmlのCSS部分(デザイントークン)がposimai-uiと同期されているか確認\n# _templateにposimai","ok":true} +{"ts":"2026-04-11T00:27:15.542Z","tool":"Bash","target":"ls c:/Users/maita/business/ 2>/dev/null | head -20","ok":true} +{"ts":"2026-04-11T00:27:15.582Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-analytics/public/ 2>/dev/null","ok":true} +{"ts":"2026-04-11T00:27:19.417Z","tool":"Bash","target":"ls c:/Users/maita/business/monthly-dashboard/","ok":true} +{"ts":"2026-04-11T00:27:19.705Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-analytics/src/app/ && ls c:/Users/mait","ok":true} +{"ts":"2026-04-11T00:27:22.560Z","tool":"Bash","target":"ls c:/Users/maita/business/monthly-dashboard/app/ && ls c:/Users/maita/business/","ok":true} +{"ts":"2026-04-11T00:27:22.637Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-analytics/src/app/\\(galaxy\\)/","ok":true} +{"ts":"2026-04-11T00:27:31.534Z","tool":"Bash","target":"ls c:/Users/maita/business/monthly-dashboard/app/","ok":true} +{"ts":"2026-04-11T00:43:06.434Z","tool":"Bash","target":"grep \"^version:\" pubspec.yaml","ok":true} +{"ts":"2026-04-11T00:43:45.340Z","tool":"Bash","target":"flutter build apk --release --dart-define=GEMINI_API_KEY=AIzaSyBEwmTa9_2aiRrwr1m","ok":true} +{"ts":"2026-04-11T00:44:13.895Z","tool":"Bash","target":"flutter build apk --release --dart-define=GEMINI_API_KEY=AIzaSyDjPZGOHy-xAstpLks","ok":true} +{"ts":"2026-04-11T00:44:43.207Z","tool":"Bash","target":"powershell -ExecutionPolicy Bypass -File release_to_gitea.ps1 -ApkDir \"build/apk","ok":true} +{"ts":"2026-04-11T00:45:06.553Z","tool":"Edit","target":"release_to_gitea.ps1","ok":true} +{"ts":"2026-04-11T00:45:16.583Z","tool":"Bash","target":"git add release_to_gitea.ps1 && git commit -m \"$(cat <<'EOF'\nfix: release_to_git","ok":true} +{"ts":"2026-04-11T02:42:27.840Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-ui/public/v1/","ok":true} +{"ts":"2026-04-11T02:43:25.928Z","tool":"Edit","target":"sw.js","ok":true} +{"ts":"2026-04-11T02:43:33.553Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-11T02:43:37.829Z","tool":"Edit","target":"create-app.sh","ok":true} +{"ts":"2026-04-11T02:44:03.082Z","tool":"Edit","target":"create-app.sh","ok":true} +{"ts":"2026-04-11T02:44:07.272Z","tool":"Bash","target":"bash -n c:/Users/maita/posimai-project/create-app.sh && echo \"syntax OK\"","ok":true} +{"ts":"2026-04-11T02:44:10.117Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git add _template-minimal/sw.js _template-m","ok":true} +{"ts":"2026-04-11T02:44:15.685Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git commit -m \"$(cat <<'EOF'\nchore: _templa","ok":true} +{"ts":"2026-04-11T02:44:23.565Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && npm run deploy 2>&1","ok":true} +{"ts":"2026-04-11T03:02:53.824Z","tool":"Bash","target":"# 現行アプリのスタック実態を確認\nhead -5 c:/Users/maita/posimai-project/posimai-brain/package.j","ok":true} +{"ts":"2026-04-11T03:03:02.084Z","tool":"Bash","target":"# 静的アプリ(HTML/CSS/JS)とNext.jsアプリの仕分け\necho \"=== Next.js アプリ ===\"\nfor d in c:/Users","ok":true} +{"ts":"2026-04-11T03:03:18.640Z","tool":"Bash","target":"# 現行アプリのSW状況・posimai-ui参照状況を一括確認\necho \"=== skipWaiting の有無 ===\"\nfor f in c:/User","ok":true} +{"ts":"2026-04-11T03:03:22.822Z","tool":"Bash","target":"# posimai-ui 未参照アプリのCSS量を確認(インラインCSSの肥大化度合い)\nfor app in posimai-brain posimai-jo","ok":true} +{"ts":"2026-04-11T03:03:23.983Z","tool":"Bash","target":"# ponshu_room_liteの確認\nls c:/Users/maita/posimai-project/ponshu_room_lite/ 2>/dev","ok":true} +{"ts":"2026-04-11T03:04:04.284Z","tool":"Bash","target":"grep -rn \"SommelierScreen\\|sommelier\" /c/Users/maita/posimai-project/ponshu_room","ok":true} +{"ts":"2026-04-11T03:04:56.512Z","tool":"Write","target":"new-app-guide.md","ok":true} +{"ts":"2026-04-11T03:05:09.042Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git add docs/new-app-guide.md && git commit","ok":true} +{"ts":"2026-04-11T03:07:53.618Z","tool":"Edit","target":"sommelier_screen.dart","ok":true} +{"ts":"2026-04-11T03:08:09.511Z","tool":"Edit","target":"sommelier_screen.dart","ok":true} +{"ts":"2026-04-11T03:08:25.878Z","tool":"Edit","target":"sommelier_screen.dart","ok":true} +{"ts":"2026-04-11T03:08:39.382Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project/ponshu_room_lite\" && flutter analyze lib/scre","ok":true} +{"ts":"2026-04-11T03:09:14.649Z","tool":"Edit","target":"sommelier_screen.dart","ok":true} +{"ts":"2026-04-11T03:09:57.911Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project/ponshu_room_lite\" && grep \"^version:\" pubspec","ok":true} +{"ts":"2026-04-11T03:10:03.610Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project/ponshu_room_lite/web/download\" && grep -n \"1\\","ok":true} +{"ts":"2026-04-11T03:10:04.012Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project/ponshu_room_lite/web/download\" && ls -la","ok":true} +{"ts":"2026-04-11T03:10:35.065Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project/ponshu_room_lite\" && git log --oneline web/do","ok":true} +{"ts":"2026-04-11T03:10:36.361Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project/ponshu_room_lite\" && git diff HEAD -- web/dow","ok":true} +{"ts":"2026-04-11T03:10:41.794Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project/ponshu_room_lite\" && git status --short 2>&1","ok":true} +{"ts":"2026-04-11T03:10:51.067Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project/ponshu_room_lite\" && git log --oneline origin","ok":true} +{"ts":"2026-04-11T03:10:52.384Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project/ponshu_room_lite\" && git diff HEAD -- web/dow","ok":true} +{"ts":"2026-04-11T03:10:57.416Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project/ponshu_room_lite\" && git remote -v 2>&1","ok":true} +{"ts":"2026-04-11T03:10:58.684Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project/ponshu_room_lite\" && git log --oneline gitea/","ok":true} +{"ts":"2026-04-11T03:11:22.002Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project/ponshu_room_lite\" && git add lib/screens/feat","ok":true} +{"ts":"2026-04-11T03:11:30.081Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project/ponshu_room_lite\" && git push gitea main 2>&1","ok":true} +{"ts":"2026-04-11T03:12:14.865Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-brain/","ok":true} +{"ts":"2026-04-11T03:12:58.936Z","tool":"Bash","target":"# 各アプリにstyle.css(別ファイル)があるか、インラインのみかを確認\necho \"=== style.css の有無 ===\"\nfor d in c:","ok":true} +{"ts":"2026-04-11T03:13:00.865Z","tool":"Bash","target":"# posimai-ui未参照の「シンプルツール系」アプリのindex.htmlサイズを確認\nfor app in posimai-diff posimai-c","ok":true} +{"ts":"2026-04-11T03:14:32.504Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project/ponshu_room_lite\" && git log --oneline 402c6b","ok":true} +{"ts":"2026-04-11T03:14:36.736Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project/ponshu_room_lite\" && git log --oneline c7168e","ok":true} +{"ts":"2026-04-11T03:14:37.987Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project/ponshu_room_lite\" && git log --oneline --sinc","ok":true} +{"ts":"2026-04-11T03:15:34.234Z","tool":"Write","target":"index.html","ok":true} +{"ts":"2026-04-11T03:15:47.506Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-widget-dl && git add index.html && git","ok":true} +{"ts":"2026-04-11T03:15:59.544Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-widget-dl && git commit -m \"$(cat <<'E","ok":true} +{"ts":"2026-04-11T03:17:04.719Z","tool":"Edit","target":"base.css","ok":true} +{"ts":"2026-04-11T03:17:17.347Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-ui && git add public/v1/base.css && gi","ok":true} +{"ts":"2026-04-11T03:17:32.557Z","tool":"Bash","target":"# pulse と habit のCSS内のapp固有部分の開始行を確認\necho \"=== pulse: CSS comment markers ===\"\ng","ok":true} +{"ts":"2026-04-11T03:18:06.402Z","tool":"Bash","target":"ls \"c:/Users/maita/posimai-project/ponshu_room_lite/.env.local\" 2>&1 && cat \"c:/","ok":true} +{"ts":"2026-04-11T03:18:08.443Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-11T03:18:28.477Z","tool":"Bash","target":"grep -n \"^version:\" \"c:/Users/maita/posimai-project/ponshu_room_lite/pubspec.yam","ok":true} +{"ts":"2026-04-11T03:18:31.934Z","tool":"Edit","target":"pubspec.yaml","ok":true} +{"ts":"2026-04-11T03:18:48.085Z","tool":"Edit","target":".env.local","ok":true} +{"ts":"2026-04-11T03:18:54.994Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-11T03:19:04.019Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-11T03:19:05.403Z","tool":"Write","target":"build_consumer_apks.ps1","ok":true} +{"ts":"2026-04-11T03:19:12.148Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project/ponshu_room_lite\" && git add pubspec.yaml && ","ok":true} +{"ts":"2026-04-11T03:19:14.117Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-11T03:19:15.145Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project/ponshu_room_lite\" && powershell -ExecutionPol","ok":true} +{"ts":"2026-04-11T03:20:05.419Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-11T13:38:31.273Z","tool":"Bash","target":"git status --short 2>/dev/null | head -50","ok":true} +{"ts":"2026-04-11T13:38:31.697Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-pulse && git log --oneline -5 && echo ","ok":true} +{"ts":"2026-04-11T13:38:32.070Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-habit && git log --oneline -5 && echo ","ok":true} +{"ts":"2026-04-11T13:38:36.735Z","tool":"Bash","target":"grep -n \"posimai-ui.vercel.app\" /c/Users/maita/posimai-project/posimai-pulse/ind","ok":true} +{"ts":"2026-04-11T13:38:37.831Z","tool":"Bash","target":"grep -n \"posimai-ui.vercel.app\" /c/Users/maita/posimai-project/posimai-habit/ind","ok":true} +{"ts":"2026-04-11T13:38:38.804Z","tool":"Bash","target":"grep -n \"data-app-id\" /c/Users/maita/posimai-project/posimai-pulse/index.html &&","ok":true} +{"ts":"2026-04-11T13:39:13.497Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/ | grep \"posimai-\"","ok":true} +{"ts":"2026-04-11T13:39:18.518Z","tool":"Bash","target":"for app in posimai-pulse posimai-habit posimai-lens posimai-diff posimai-clean p","ok":true} +{"ts":"2026-04-11T13:39:21.323Z","tool":"Bash","target":"for app in posimai-pulse posimai-habit; do\n echo \"=== $app ===\"\n cd /c/Users/m","ok":true} +{"ts":"2026-04-11T13:39:24.631Z","tool":"Bash","target":"for app in posimai-pulse posimai-habit; do\n echo \"=== $app remotes ===\"\n cd /c","ok":true} +{"ts":"2026-04-11T13:39:38.147Z","tool":"Bash","target":"for app in posimai-pulse posimai-habit; do\n echo \"=== $app ===\"\n cd /c/Users/m","ok":true} +{"ts":"2026-04-11T13:39:46.047Z","tool":"Bash","target":"wc -l /c/Users/maita/posimai-project/posimai-lens/index.html /c/Users/maita/posi","ok":true} +{"ts":"2026-04-11T13:39:52.604Z","tool":"Bash","target":"for app in posimai-lens posimai-diff posimai-clean posimai-think posimai-digest ","ok":true} +{"ts":"2026-04-11T13:39:59.642Z","tool":"Bash","target":"for app in posimai-lens posimai-diff posimai-clean posimai-think posimai-digest ","ok":true} +{"ts":"2026-04-11T13:40:05.800Z","tool":"Bash","target":"grep -n \"posimai-ui\\|:root\\|--bg\\|data-app-id\\|data-theme\" /c/Users/maita/posima","ok":true} +{"ts":"2026-04-11T13:41:53.121Z","tool":"Bash","target":"grep -n \"Lens specific\\|toast\\.show\\|\\*, \\*::before\" /c/Users/maita/posimai-proj","ok":true} +{"ts":"2026-04-11T13:42:22.665Z","tool":"Bash","target":"node -e \"\nconst fs = require('fs');\nconst path = 'C:/Users/maita/posimai-project","ok":true} +{"ts":"2026-04-11T13:42:47.831Z","tool":"Bash","target":"node -e \"\nconst fs = require('fs');\nconst path = 'C:/Users/maita/posimai-project","ok":true} +{"ts":"2026-04-11T13:42:53.840Z","tool":"Bash","target":"tail -15 /c/Users/maita/posimai-project/posimai-lens/index.html","ok":true} +{"ts":"2026-04-11T13:43:06.838Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-lens && git diff --stat && git add ind","ok":true} +{"ts":"2026-04-11T13:43:15.580Z","tool":"Bash","target":"git commit -m \"refactor: posimai-ui 移行 — 重複トークン削除・base.css 参照に統一\" && npm run dep","ok":true} +{"ts":"2026-04-11T13:43:24.710Z","tool":"Bash","target":"grep -n \"Diff specific\\|toast\\.show\\|\\*, \\*::before\\|data-app-id\\|posimai-ui.ver","ok":true} +{"ts":"2026-04-11T13:43:25.257Z","tool":"Bash","target":"grep -n \"Diff specific\\|toast\\.show\\|\\*, \\*::before\\|data-app-id\\|posimai-ui.ver","ok":true} +{"ts":"2026-04-11T13:43:29.206Z","tool":"Bash","target":"grep -n \"Diff specific\\|toast\\.show\\|\\*, \\*::before\\|data-app-id\\|posimai-ui\\|fo","ok":true} +{"ts":"2026-04-11T13:43:40.917Z","tool":"Bash","target":"grep -n \"Clean specific\\|Think specific\\|toast\\.show\\|\\*, \\*::before\" /c/Users/m","ok":true} +{"ts":"2026-04-11T13:44:07.375Z","tool":"Bash","target":"node -e \"\nconst fs = require('fs');\nconst path = 'C:/Users/maita/posimai-project","ok":true} +{"ts":"2026-04-11T13:44:16.797Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-diff && git add index.html && git comm","ok":true} +{"ts":"2026-04-11T13:44:23.400Z","tool":"Bash","target":"grep -n \"Clean specific\\|specific\\|form-input\\|lang-select\\|\\.section {\" /c/User","ok":true} +{"ts":"2026-04-11T13:44:41.769Z","tool":"Bash","target":"grep -n \"specific\\|form-input\\|lang-select\\|\\.section {\" /c/Users/maita/posimai-","ok":true} +{"ts":"2026-04-11T13:44:42.674Z","tool":"Bash","target":"grep -n \"specific\\|form-input\\|lang-select\\|\\.section {\" /c/Users/maita/posimai-","ok":true} +{"ts":"2026-04-11T13:44:47.905Z","tool":"Bash","target":"grep -n \"\\*, \\*::before\\|Think specific\\|toast\\.show\\|data-app-id\\|posimai-ui\" /","ok":true} +{"ts":"2026-04-11T13:44:48.741Z","tool":"Bash","target":"grep -n \"\\*, \\*::before\\|Digest specific\\|toast\\.show\\|data-app-id\\|posimai-ui\" ","ok":true} +{"ts":"2026-04-11T13:45:57.285Z","tool":"Bash","target":"node -e \"\nconst fs = require('fs');\n\n// === clean ===\nconst cleanPath = 'C:/User","ok":true} +{"ts":"2026-04-11T13:46:09.023Z","tool":"Bash","target":"grep -n \"data-app-id\\|posimai-ui.vercel\\|posimai_token\" /c/Users/maita/posimai-p","ok":true} +{"ts":"2026-04-11T13:46:16.649Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-clean && git add index.html && git com","ok":true} +{"ts":"2026-04-11T13:46:24.754Z","tool":"Bash","target":"grep -n \"Content-Security-Policy\\|style-src\" /c/Users/maita/posimai-project/posi","ok":true} +{"ts":"2026-04-11T13:46:36.017Z","tool":"Bash","target":"grep -n \"posimai_token\\|posimai_api_key\\|Bearer\\|localStorage\" /c/Users/maita/po","ok":true} +{"ts":"2026-04-11T13:46:49.884Z","tool":"Bash","target":"node -e \"\nconst fs = require('fs');\nconst thinkPath = 'C:/Users/maita/posimai-pr","ok":true} +{"ts":"2026-04-11T13:46:58.249Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-think && git add index.html && git com","ok":true} +{"ts":"2026-04-11T13:47:07.299Z","tool":"Bash","target":"grep -n \"\\*, \\*::before\\|toast\\.show\\|data-app-id\\|Digest specific\\|form-input\\|","ok":true} +{"ts":"2026-04-11T13:47:56.066Z","tool":"Bash","target":"node -e \"\nconst fs = require('fs');\nconst path = 'C:/Users/maita/posimai-project","ok":true} +{"ts":"2026-04-11T13:48:05.323Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-digest && git add index.html && git co","ok":true} +{"ts":"2026-04-11T13:48:14.137Z","tool":"Bash","target":"cat /c/Users/maita/.claude/projects/c--Users-maita-posimai-project/memory/projec","ok":true} +{"ts":"2026-04-11T13:48:16.878Z","tool":"Bash","target":"ls /c/Users/maita/.claude/ 2>/dev/null && ls /c/Users/maita/posimai-project/.cla","ok":true} +{"ts":"2026-04-11T13:48:39.900Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/.gitignore 2>/dev/null | head -20; echo \"---\"","ok":true} +{"ts":"2026-04-11T13:49:48.384Z","tool":"Write","target":"postgresql-mcp-setup.md","ok":true} +{"ts":"2026-04-11T13:50:17.875Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/.gitignore","ok":true} +{"ts":"2026-04-11T13:50:27.357Z","tool":"Write","target":".mcp.json","ok":true} +{"ts":"2026-04-11T13:50:36.284Z","tool":"Edit","target":".gitignore","ok":true} +{"ts":"2026-04-11T13:50:59.313Z","tool":"Edit","target":"STATUS.md","ok":true} +{"ts":"2026-04-11T13:54:42.723Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/deploy-server.sh 2>/dev/null | head -40","ok":true} +{"ts":"2026-04-11T13:54:49.807Z","tool":"Bash","target":"for app in posimai-timer posimai-log posimai-store posimai-feed posimai-journal ","ok":true} +{"ts":"2026-04-11T13:55:00.308Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o BatchMode=yes -o ConnectTimeout=10 root","ok":true} +{"ts":"2026-04-11T13:55:00.651Z","tool":"Bash","target":"grep -n \"DB_\\|DATABASE_\\|PG_\\|POSTGRES\\|pg.Pool\\|new Pool\\|connectionString\" /c/","ok":true} +{"ts":"2026-04-11T13:55:06.572Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o BatchMode=yes root@85.131.245.239 \"cat ","ok":true} +{"ts":"2026-04-11T13:55:08.567Z","tool":"Bash","target":"# コードレビュー: セキュリティ問題のスキャン\ngrep -rn \"eval\\|innerHTML\\|document\\.write\\|dangerously","ok":true} +{"ts":"2026-04-11T13:55:21.078Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o BatchMode=yes root@85.131.245.239 \"dock","ok":true} +{"ts":"2026-04-11T13:55:22.307Z","tool":"Bash","target":"# feed の innerHTML - サーバーデータか?XSS リスク評価\ngrep -n \"innerHTML\\|article\\.\" /c/Users/","ok":true} +{"ts":"2026-04-11T13:55:27.792Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o BatchMode=yes root@85.131.245.239 \"dock","ok":true} +{"ts":"2026-04-11T13:55:39.327Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o BatchMode=yes root@85.131.245.239 \"ss -","ok":true} +{"ts":"2026-04-11T13:55:56.615Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o BatchMode=yes root@85.131.245.239 \"dock","ok":true} +{"ts":"2026-04-11T13:56:10.146Z","tool":"Bash","target":"# SSH トンネル経由でテスト接続(バックグラウンドで張って psql でチェック)\nssh -i ~/.ssh/soar-enrich-openssh.pe","ok":true} +{"ts":"2026-04-11T13:56:18.819Z","tool":"Bash","target":"# SSH トンネルのポート確認\nss -tlnp 2>/dev/null | grep 15432 || netstat -tlnp 2>/dev/null ","ok":true} +{"ts":"2026-04-11T13:56:24.035Z","tool":"Bash","target":"# Windows なので netstat で確認\nnetstat -an 2>/dev/null | grep \"15432\\|LISTEN\" | grep ","ok":true} +{"ts":"2026-04-11T13:56:48.347Z","tool":"Bash","target":"mkdir -p /c/Users/maita/posimai-project/scripts","ok":true} +{"ts":"2026-04-11T13:56:50.646Z","tool":"Bash","target":"# コードレビュー続行: 残りアプリのセキュリティ問題\ngrep -rn \"innerHTML\" /c/Users/maita/posimai-project/","ok":true} +{"ts":"2026-04-11T13:57:02.937Z","tool":"Write","target":"start-postgres-mcp.sh","ok":true} +{"ts":"2026-04-11T13:57:13.771Z","tool":"Write","target":".mcp.json","ok":true} +{"ts":"2026-04-11T13:57:28.590Z","tool":"Bash","target":"# コードレビュー: server.js のセキュリティ・品質チェック\nwc -l /c/Users/maita/posimai-project/server.","ok":true} +{"ts":"2026-04-11T13:57:34.336Z","tool":"Bash","target":"# SW バージョン一覧(キャッシュ管理確認)\nfor app in posimai-lens posimai-diff posimai-clean posim","ok":true} +{"ts":"2026-04-11T13:57:34.663Z","tool":"Bash","target":"# ALLOWED_ORIGINS の漏れチェック (Vercel ワイルドカード未対応アプリ)\ngrep -n \"ALLOWED_ORIGINS\\|allow","ok":true} +{"ts":"2026-04-11T13:57:37.804Z","tool":"Bash","target":"grep -n \"posimai-\\*\\|vercel\\.app\\|wildcard\\|match\\|pattern\" /c/Users/maita/posim","ok":true} +{"ts":"2026-04-11T13:57:41.161Z","tool":"Bash","target":"# コードレビュー: rel=\"noopener\" 漏れ\nfor app in posimai-feed posimai-journal posimai-rea","ok":true} +{"ts":"2026-04-11T13:57:45.434Z","tool":"Bash","target":"# コードレビュー: feed sw.js の CACHE 名確認(空だった)\ngrep \"CACHE\\|skipWaiting\\|addAll\" /c/Use","ok":true} +{"ts":"2026-04-11T13:57:46.616Z","tool":"Bash","target":"# コードレビュー: server.js の重要箇所 - レート制限・認証\ngrep -n \"rateLimit\\|limiter\\|authMiddlewar","ok":true} +{"ts":"2026-04-11T13:57:50.014Z","tool":"Bash","target":"# コードレビュー: インメモリ rateLimit の問題確認\ngrep -n \"rateLimitStores\\|setInterval\\|rateLimi","ok":true} +{"ts":"2026-04-11T13:57:52.565Z","tool":"Bash","target":"# コードレビュー: server.js の未使用ルート・エンドポイント一覧\ngrep -n \"r\\.\\(get\\|post\\|put\\|patch\\|dele","ok":true} +{"ts":"2026-04-11T13:57:58.342Z","tool":"Bash","target":"# together エンドポイントは全て認証なし?問題チェック\ngrep -n \"together\" /c/Users/maita/posimai-proje","ok":true} +{"ts":"2026-04-11T13:58:03.168Z","tool":"Bash","target":"# ponshu 系の状況\nls /c/Users/maita/posimai-project/ | grep -i \"ponshu\\|sake\"\n# 未移行ア","ok":true} +{"ts":"2026-04-11T13:58:08.310Z","tool":"Bash","target":"# together エンドポイント詳細(認証なしで公開?)\nsed -n '2390,2560p' /c/Users/maita/posimai-projec","ok":true} +{"ts":"2026-04-11T13:58:11.149Z","tool":"Bash","target":"# コードレビュー: 各アプリのmanifest.json id 確認(重複/ミス)\nfor app in posimai-lens posimai-diff ","ok":true} +{"ts":"2026-04-11T13:59:01.032Z","tool":"Edit","target":"start-postgres-mcp.sh","ok":true} +{"ts":"2026-04-11T14:00:57.212Z","tool":"Bash","target":"git log --oneline -5","ok":true} +{"ts":"2026-04-11T14:00:57.824Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-store/ 2>/dev/null | head -20","ok":true} +{"ts":"2026-04-11T14:00:59.663Z","tool":"Bash","target":"wc -l /c/Users/maita/posimai-project/posimai-store/index.html","ok":true} +{"ts":"2026-04-11T14:01:01.319Z","tool":"Bash","target":"grep -n \"posimai-db-1\\|Together\\|shared_by\" /c/Users/maita/posimai-project/posim","ok":true} +{"ts":"2026-04-11T14:01:06.345Z","tool":"Bash","target":"grep -n \"shared_by\\|/together\" /c/Users/maita/posimai-project/server.js | head -","ok":true} +{"ts":"2026-04-11T14:01:19.710Z","tool":"Bash","target":"grep -n \"jwt\\|JWT\\|verifyToken\\|authenticateToken\\|Authorization\\|Bearer\" /c/Use","ok":true} +{"ts":"2026-04-11T14:01:29.625Z","tool":"Bash","target":"grep -n \"username\\|together_groups\\|together_members\\|CREATE TABLE together\" /c/","ok":true} +{"ts":"2026-04-11T14:02:02.977Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-11T14:02:10.527Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-11T14:02:17.934Z","tool":"Edit","target":"server.js","ok":true} +{"ts":"2026-04-11T14:02:22.462Z","tool":"Bash","target":"grep -rn '\"id\"' /c/Users/maita/posimai-project/posimai-store/manifest.json /c/Us","ok":true} +{"ts":"2026-04-11T14:02:24.916Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -maxdepth 2 -name \"manifest.json\" | xargs gr","ok":true} +{"ts":"2026-04-11T14:02:27.621Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -maxdepth 2 -name \"manifest.json\" | xargs gr","ok":true} +{"ts":"2026-04-11T14:02:33.941Z","tool":"Bash","target":"grep -A3 '\"id\"' /c/Users/maita/posimai-project/docs/new-app-guide.md 2>/dev/null","ok":true} +{"ts":"2026-04-11T14:02:41.506Z","tool":"Edit","target":"manifest.json","ok":true} +{"ts":"2026-04-11T14:02:44.891Z","tool":"Edit","target":"manifest.json","ok":true} +{"ts":"2026-04-11T14:02:48.165Z","tool":"Edit","target":"manifest.json","ok":true} +{"ts":"2026-04-11T14:02:51.583Z","tool":"Edit","target":"manifest.json","ok":true} +{"ts":"2026-04-11T14:02:56.749Z","tool":"Bash","target":"grep -n \"openInReader\\|article\\.url\\|onclick.*url\" /c/Users/maita/posimai-projec","ok":true} +{"ts":"2026-04-11T14:03:06.938Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-11T14:03:17.084Z","tool":"Bash","target":"grep -n \"articles-container\\|DOMContentLoaded\\|addEventListener.*DOMContent\\|con","ok":true} +{"ts":"2026-04-11T14:03:28.840Z","tool":"Edit","target":"index.html","ok":true} +{"ts":"2026-04-11T14:03:36.246Z","tool":"Bash","target":"grep -n \"saveToBrain\" /c/Users/maita/posimai-project/posimai-feed/index.html","ok":true} +{"ts":"2026-04-11T14:03:49.763Z","tool":"Bash","target":"git add server.js && git commit -m \"$(cat <<'EOF'\nfix: Together API に投稿前グループメンバー","ok":true} +{"ts":"2026-04-11T14:03:53.687Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-lens && git add manifest.json && git c","ok":true} +{"ts":"2026-04-11T14:03:56.731Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-diff && git add manifest.json && git c","ok":true} +{"ts":"2026-04-11T14:04:00.809Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-habit && git add manifest.json && git ","ok":true} +{"ts":"2026-04-11T14:04:05.814Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-feed && git add index.html && git comm","ok":true} +{"ts":"2026-04-11T14:04:15.353Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project && npm run deploy 2>&1 | tail -5","ok":true} +{"ts":"2026-04-11T14:04:34.910Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project && bash deploy-server.sh 2>&1 | tail -15","ok":true} +{"ts":"2026-04-11T14:04:47.257Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-lens && npm run deploy 2>&1 | tail -5 ","ok":true} +{"ts":"2026-04-11T14:04:57.485Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-habit && npm run deploy 2>&1 | tail -5","ok":true} +{"ts":"2026-04-11T14:05:02.604Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-feed && npm run deploy 2>&1 | tail -5","ok":true} +{"ts":"2026-04-11T14:05:24.628Z","tool":"Edit","target":"STATUS.md","ok":true} +{"ts":"2026-04-11T14:05:33.907Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project && git add STATUS.md && git commit -m \"$(cat <","ok":true} +{"ts":"2026-04-11T15:13:53.237Z","tool":"Bash","target":"npm show @playwright/mcp version 2>&1","ok":true} +{"ts":"2026-04-11T15:14:06.044Z","tool":"Bash","target":"uvx --version 2>&1 || uv --version 2>&1 || python --version 2>&1 || echo \"uvx/uv","ok":true} +{"ts":"2026-04-11T15:14:07.597Z","tool":"Bash","target":"npm show @modelcontextprotocol/server-github version 2>&1","ok":true} +{"ts":"2026-04-11T15:14:24.784Z","tool":"Bash","target":"uvx mcp-server-fetch --version 2>&1 || uvx --from mcp-server-fetch mcp-server-fe","ok":true} +{"ts":"2026-04-11T15:14:31.167Z","tool":"Bash","target":"uvx pip show mcp-server-fetch 2>&1 | grep \"^Version\" || pip index versions mcp-s","ok":true} +{"ts":"2026-04-11T15:14:56.279Z","tool":"Write","target":".mcp.json","ok":true} +{"ts":"2026-04-11T15:15:02.835Z","tool":"Bash","target":"grep -n \"environment\\|POSTGRES_\\|JWT_SECRET\\|API_KEYS\\|RESEND\\|GEMINI\\|GITHUB\\|P","ok":true} +{"ts":"2026-04-11T15:15:13.284Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -name \"docker-compose*.yml\" -not -path \"*/no","ok":true} +{"ts":"2026-04-11T15:15:19.216Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o BatchMode=yes -o ConnectTimeout=10 root","ok":true} +{"ts":"2026-04-11T15:15:25.107Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o BatchMode=yes -o ConnectTimeout=10 root","ok":true} +{"ts":"2026-04-11T15:16:08.057Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o BatchMode=yes -o ConnectTimeout=10 root","ok":true} +{"ts":"2026-04-11T15:16:25.857Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o BatchMode=yes -o ConnectTimeout=10 root","ok":true} +{"ts":"2026-04-11T15:16:29.544Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o BatchMode=yes -o ConnectTimeout=10 root","ok":true} +{"ts":"2026-04-11T15:16:33.034Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o BatchMode=yes -o ConnectTimeout=10 root","ok":true} +{"ts":"2026-04-11T15:16:53.783Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o BatchMode=yes -o ConnectTimeout=60 root","ok":true} +{"ts":"2026-04-11T15:17:02.297Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem -o BatchMode=yes -o ConnectTimeout=30 root","ok":true} +{"ts":"2026-04-11T15:17:05.567Z","tool":"Bash","target":"curl -s https://api.soar-enrich.com/brain/api/health | head -c 200","ok":true} +{"ts":"2026-04-11T15:25:44.455Z","tool":"Bash","target":"npm show @stripe/mcp version 2>&1","ok":true} +{"ts":"2026-04-11T15:30:13.418Z","tool":"Bash","target":"npm show @stripe/mcp version 2>&1 && echo \"---\" && npm show vercel-mcp version 2","ok":true} +{"ts":"2026-04-11T15:30:13.719Z","tool":"Bash","target":"grep -n \"STRIPE_SECRET\\|sk_test\\|sk_live\\|STRIPE_KEY\\|stripeSecretKey\" /c/Users/","ok":true} +{"ts":"2026-04-11T15:30:16.829Z","tool":"Bash","target":"grep -n \"stripe\\|Stripe\" /c/Users/maita/posimai-project/server.js | head -20","ok":true} +{"ts":"2026-04-11T15:30:27.864Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/routes/stripe.js 2>/dev/null | grep -n \"STRIP","ok":true} +{"ts":"2026-04-11T15:30:29.594Z","tool":"Bash","target":"npm show mcp-remote version 2>&1","ok":true} +{"ts":"2026-04-11T15:30:32.276Z","tool":"Bash","target":"head -30 /c/Users/maita/posimai-project/routes/stripe.js 2>/dev/null","ok":true} +{"ts":"2026-04-11T15:33:05.127Z","tool":"Write","target":".mcp.json","ok":true} +{"ts":"2026-04-11T21:49:15.675Z","tool":"Bash","target":"bash scripts/start-postgres-mcp.sh echo \"tunnel-test\" 2>&1","ok":true} +{"ts":"2026-04-11T21:49:19.365Z","tool":"Bash","target":"npx @playwright/mcp@0.0.70 --version 2>&1 | head -5 || npx playwright install --","ok":true} +{"ts":"2026-04-11T21:49:24.497Z","tool":"Bash","target":"npx -y @playwright/mcp@0.0.70 --help 2>&1 | head -10","ok":true} +{"ts":"2026-04-11T21:49:29.765Z","tool":"Bash","target":"npx -y @playwright/mcp@0.0.70 2>&1 | head -10","ok":true} +{"ts":"2026-04-11T21:49:59.801Z","tool":"Bash","target":"where bash 2>&1 && where npx 2>&1","ok":true} +{"ts":"2026-04-11T21:50:05.277Z","tool":"Bash","target":"npx -y @playwright/mcp@0.0.70 --list-tools 2>&1 | head -20","ok":true} +{"ts":"2026-04-11T21:50:08.393Z","tool":"Bash","target":"node -e \"require('@playwright/mcp')\" 2>&1 | head -5 || echo \"module not installe","ok":true} +{"ts":"2026-04-11T21:50:10.225Z","tool":"Bash","target":"cat \"C:/Users/maita/AppData/Local/npm-cache/_npx\" 2>/dev/null | head -5 || ls \"C","ok":true} +{"ts":"2026-04-11T21:50:17.222Z","tool":"Bash","target":"npm install -g @playwright/mcp@0.0.70 2>&1 | tail -5","ok":true} +{"ts":"2026-04-11T21:50:20.940Z","tool":"Bash","target":"where playwright-mcp 2>&1 && playwright-mcp --help 2>&1 | head -5","ok":true} +{"ts":"2026-04-11T21:51:14.795Z","tool":"Write","target":".mcp.json","ok":true} +{"ts":"2026-04-11T21:53:53.762Z","tool":"Bash","target":"netstat -an 2>/dev/null | grep \"127.0.0.1:15432\" || ss -tlnp 2>/dev/null | grep ","ok":true} +{"ts":"2026-04-11T21:54:10.230Z","tool":"Bash","target":"npx -y @modelcontextprotocol/server-postgres \"postgresql://posimai_readonly:read","ok":true} +{"ts":"2026-04-11T21:54:50.973Z","tool":"Write","target":".mcp.json","ok":true} +{"ts":"2026-04-11T22:59:17.406Z","tool":"Bash","target":"ls c:\\Users\\maita\\posimai-project\\ | grep -i -E \"meeting|monthly|geturei|月例\"","ok":true} +{"ts":"2026-04-11T22:59:20.339Z","tool":"Bash","target":"ls \"c:/Users/maita/posimai-project/\"","ok":true} +{"ts":"2026-04-11T22:59:26.169Z","tool":"Bash","target":"ls \"c:/Users/maita/posimai-project/m-ai-dashboard/\"","ok":true} +{"ts":"2026-04-11T22:59:39.619Z","tool":"Bash","target":"grep -i \"icon\\|lucide\\|font-awesome\\|material\\|heroicon\\|phosphor\\|tabler\\|svg\" ","ok":true} +{"ts":"2026-04-11T22:59:42.557Z","tool":"Bash","target":"grep -i \"icon\\|lucide\\|font-awesome\\|material\\|heroicon\\|phosphor\\|tabler\\|svg\\|","ok":true} +{"ts":"2026-04-11T22:59:46.165Z","tool":"Bash","target":"grep -i \"icon\\|lucide\\|font-awesome\\|material\\|heroicon\\|phosphor\\|tabler\" \"c:/U","ok":true} +{"ts":"2026-04-11T23:09:21.501Z","tool":"Bash","target":"ls \"c:/Users/maita/posimai-project/_template/\" && echo \"---\" && ls \"c:/Users/mai","ok":true} +{"ts":"2026-04-11T23:09:32.820Z","tool":"Bash","target":"cat \"c:/Users/maita/posimai-project/posimai-dashboard/package.json\" | grep -E \"n","ok":true} +{"ts":"2026-04-11T23:09:55.534Z","tool":"Bash","target":"cat \"c:/Users/maita/posimai-project/posimai-dashboard/src/app/globals.css\" | hea","ok":true} +{"ts":"2026-04-11T23:10:50.037Z","tool":"Bash","target":"grep -r \"ANTHROPIC\\|anthropic\\|claude\" \"c:/Users/maita/posimai-project/posimai-d","ok":true} +{"ts":"2026-04-11T23:12:54.929Z","tool":"Edit","target":"DESIGN.md","ok":true} +{"ts":"2026-04-11T23:13:20.577Z","tool":"Edit","target":"DESIGN.md","ok":true} +{"ts":"2026-04-11T23:13:46.504Z","tool":"Write","target":"package.json","ok":true} +{"ts":"2026-04-11T23:13:50.777Z","tool":"Write","target":"next.config.ts","ok":true} +{"ts":"2026-04-11T23:13:57.121Z","tool":"Write","target":"tsconfig.json","ok":true} +{"ts":"2026-04-11T23:14:03.815Z","tool":"Write","target":"postcss.config.mjs","ok":true} +{"ts":"2026-04-11T23:14:14.885Z","tool":"Write","target":".env.example","ok":true} +{"ts":"2026-04-11T23:14:41.734Z","tool":"Write","target":"globals.css","ok":true} +{"ts":"2026-04-11T23:14:51.190Z","tool":"Write","target":"layout.tsx","ok":true} +{"ts":"2026-04-11T23:15:36.142Z","tool":"Write","target":"page.tsx","ok":true} +{"ts":"2026-04-11T23:16:21.016Z","tool":"Write","target":"DropZone.tsx","ok":true} +{"ts":"2026-04-11T23:16:36.823Z","tool":"Write","target":"UrlInput.tsx","ok":true} +{"ts":"2026-04-11T23:16:51.147Z","tool":"Write","target":"ScanningView.tsx","ok":true} +{"ts":"2026-04-11T23:17:44.262Z","tool":"Write","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-11T23:18:24.584Z","tool":"Write","target":"route.ts","ok":true} +{"ts":"2026-04-11T23:18:42.560Z","tool":"Write","target":"route.ts","ok":true} +{"ts":"2026-04-11T23:19:06.627Z","tool":"Write","target":"manifest.json","ok":true} +{"ts":"2026-04-11T23:19:16.134Z","tool":"Write","target":"sw.js","ok":true} +{"ts":"2026-04-11T23:19:43.022Z","tool":"Edit","target":"layout.tsx","ok":true} +{"ts":"2026-04-11T23:19:47.650Z","tool":"Bash","target":"find \"c:/Users/maita/posimai-project/posimai-guard\" -type f | grep -v node_modul","ok":true} +{"ts":"2026-04-12T01:00:52.597Z","tool":"Edit","target":"package.json","ok":true} +{"ts":"2026-04-12T01:00:58.598Z","tool":"Write","target":".env.example","ok":true} +{"ts":"2026-04-12T01:01:21.456Z","tool":"Write","target":"route.ts","ok":true} +{"ts":"2026-04-12T01:37:15.790Z","tool":"Bash","target":"cat ~/posimai-project/deploy-server.sh | grep -E \"ssh|HOST|IP\" | head -10","ok":true} +{"ts":"2026-04-12T01:37:57.369Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem root@85.131.245.239 \"find / -name '.env' 2","ok":true} +{"ts":"2026-04-12T01:38:05.076Z","tool":"Bash","target":"ssh -i ~/.ssh/soar-enrich-openssh.pem root@85.131.245.239 \"grep -i gemini /opt/p","ok":true} +{"ts":"2026-04-12T01:50:34.387Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project/posimai-guard\" && npm install 2>&1","ok":true} +{"ts":"2026-04-12T01:50:59.805Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project/posimai-guard\" && npm audit 2>&1 | head -20 &","ok":true} +{"ts":"2026-04-12T01:51:08.441Z","tool":"Edit","target":"package.json","ok":true} +{"ts":"2026-04-12T01:51:13.961Z","tool":"Edit","target":"package.json","ok":true} +{"ts":"2026-04-12T01:51:21.003Z","tool":"Edit","target":"tsconfig.json","ok":true} +{"ts":"2026-04-12T01:52:26.897Z","tool":"Bash","target":"cd \"c:/Users/maita/posimai-project/posimai-guard\" && npm install && ls node_modu","ok":true} +{"ts":"2026-04-12T01:52:51.645Z","tool":"Edit","target":"tsconfig.json","ok":true} +{"ts":"2026-04-12T01:53:04.186Z","tool":"Bash","target":"ls \"c:/Users/maita/posimai-project/posimai-guard/node_modules/@types/node/index.","ok":true} +{"ts":"2026-04-12T01:56:27.719Z","tool":"Write","target":"next-env.d.ts","ok":true} +{"ts":"2026-04-12T02:00:04.928Z","tool":"Write","target":"layout.tsx","ok":true} +{"ts":"2026-04-12T02:00:16.075Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T02:00:22.407Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T02:06:35.212Z","tool":"Write","target":"FileTree.tsx","ok":true} +{"ts":"2026-04-12T02:07:26.387Z","tool":"Write","target":"page.tsx","ok":true} +{"ts":"2026-04-12T02:08:24.942Z","tool":"Write","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-12T02:15:30.994Z","tool":"Edit","target":"DropZone.tsx","ok":true} +{"ts":"2026-04-12T02:15:38.293Z","tool":"Edit","target":"DropZone.tsx","ok":true} +{"ts":"2026-04-12T02:16:05.786Z","tool":"Edit","target":"DropZone.tsx","ok":true} +{"ts":"2026-04-12T02:21:54.479Z","tool":"Edit","target":"route.ts","ok":true} +{"ts":"2026-04-12T02:22:03.516Z","tool":"Edit","target":"DropZone.tsx","ok":true} +{"ts":"2026-04-12T02:22:12.822Z","tool":"Edit","target":"DropZone.tsx","ok":true} +{"ts":"2026-04-12T02:22:21.461Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T02:22:27.716Z","tool":"Edit","target":"DropZone.tsx","ok":true} +{"ts":"2026-04-12T02:22:35.763Z","tool":"Edit","target":"DropZone.tsx","ok":true} +{"ts":"2026-04-12T02:22:45.284Z","tool":"Edit","target":"route.ts","ok":true} +{"ts":"2026-04-12T02:25:35.349Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/","ok":true} +{"ts":"2026-04-12T02:25:42.034Z","tool":"Bash","target":"wc -l c:/Users/maita/posimai-project/posimai-dashboard/src/data/projects.json &&","ok":true} +{"ts":"2026-04-12T02:25:51.769Z","tool":"Bash","target":"node -e \"const d=require('./posimai-dashboard/src/data/projects.json'); d.projec","ok":true} +{"ts":"2026-04-12T02:25:54.612Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-dashboard/src/app/","ok":true} +{"ts":"2026-04-12T02:26:04.242Z","tool":"Bash","target":"wc -l c:/Users/maita/posimai-project/posimai-dashboard/src/app/timeline/page.tsx","ok":true} +{"ts":"2026-04-12T02:26:09.748Z","tool":"Bash","target":"grep -n \"guard\\|Guard\\|posimai-guard\" c:/Users/maita/posimai-project/posimai-das","ok":true} +{"ts":"2026-04-12T02:26:14.299Z","tool":"Bash","target":"grep -rn \"guard\" c:/Users/maita/posimai-project/posimai-dashboard/src/ 2>/dev/nu","ok":true} +{"ts":"2026-04-12T02:26:43.056Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-roadmap/src/data/ 2>/dev/null || ls c:","ok":true} +{"ts":"2026-04-12T02:26:46.486Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-roadmap/src/ 2>/dev/null\nfind c:/Users","ok":true} +{"ts":"2026-04-12T02:26:51.047Z","tool":"Bash","target":"cat c:/Users/maita/posimai-project/posimai-roadmap/roadmap.json | head -80","ok":true} +{"ts":"2026-04-12T02:26:55.310Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-atlas/\ncat c:/Users/maita/posimai-proj","ok":true} +{"ts":"2026-04-12T02:27:41.798Z","tool":"Bash","target":"grep -n '\"id\": \"posimai-dev\"' c:/Users/maita/posimai-project/posimai-dashboard/s","ok":true} +{"ts":"2026-04-12T02:27:48.013Z","tool":"Edit","target":"projects.json","ok":true} +{"ts":"2026-04-12T02:27:58.231Z","tool":"Edit","target":"projects.json","ok":true} +{"ts":"2026-04-12T02:28:13.833Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T02:28:26.084Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T02:28:32.821Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T02:29:01.120Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T02:29:15.445Z","tool":"Bash","target":"tail -30 c:/Users/maita/posimai-project/posimai-roadmap/roadmap.json","ok":true} +{"ts":"2026-04-12T02:29:41.481Z","tool":"Edit","target":"roadmap.json","ok":true} +{"ts":"2026-04-12T02:29:54.408Z","tool":"Bash","target":"tail -40 c:/Users/maita/posimai-project/posimai-atlas/atlas.json","ok":true} +{"ts":"2026-04-12T02:29:58.263Z","tool":"Bash","target":"grep -n '\"posimai-apps\"' c:/Users/maita/posimai-project/posimai-atlas/atlas.json","ok":true} +{"ts":"2026-04-12T02:30:08.010Z","tool":"Edit","target":"atlas.json","ok":true} +{"ts":"2026-04-12T02:30:13.975Z","tool":"Edit","target":"atlas.json","ok":true} +{"ts":"2026-04-12T02:30:19.299Z","tool":"Bash","target":"grep -n '\"updated\"' c:/Users/maita/posimai-project/posimai-atlas/atlas.json","ok":true} +{"ts":"2026-04-12T02:30:22.790Z","tool":"Edit","target":"atlas.json","ok":true} +{"ts":"2026-04-12T02:38:22.231Z","tool":"Edit","target":"route.ts","ok":true} +{"ts":"2026-04-12T02:38:28.070Z","tool":"Edit","target":"route.ts","ok":true} +{"ts":"2026-04-12T02:39:27.277Z","tool":"Write","target":"page.tsx","ok":true} +{"ts":"2026-04-12T02:39:36.432Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/.claude/ 2>/dev/null || echo \"no .claude dir\"\n","ok":true} +{"ts":"2026-04-12T02:39:44.923Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/scripts/ 2>/dev/null","ok":true} +{"ts":"2026-04-12T02:39:48.099Z","tool":"Bash","target":"cat c:/Users/maita/posimai-project/scripts/new-app.sh","ok":true} +{"ts":"2026-04-12T02:40:22.454Z","tool":"Write","target":"check-registrations.js","ok":true} +{"ts":"2026-04-12T02:41:00.758Z","tool":"Bash","target":"grep -c \"guard\" c:/Users/maita/posimai-project/posimai-atlas/atlas.json","ok":true} +{"ts":"2026-04-12T02:41:08.518Z","tool":"Edit","target":"check-registrations.js","ok":true} +{"ts":"2026-04-12T02:41:18.405Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && node scripts/check-registrations.js posimai","ok":true} +{"ts":"2026-04-12T02:41:25.528Z","tool":"Bash","target":"grep '\"type\"' c:/Users/maita/posimai-project/package.json","ok":true} +{"ts":"2026-04-12T02:41:43.257Z","tool":"Edit","target":"package.json","ok":true} +{"ts":"2026-04-12T02:41:57.365Z","tool":"Edit","target":"new-app.sh","ok":true} +{"ts":"2026-04-12T02:42:32.099Z","tool":"Edit","target":"CLAUDE.md","ok":true} +{"ts":"2026-04-12T02:42:46.777Z","tool":"Edit","target":"AGENTS.md","ok":true} +{"ts":"2026-04-12T02:42:51.551Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && node scripts/check-registrations.js posimai","ok":true} +{"ts":"2026-04-12T02:43:37.631Z","tool":"Bash","target":"cat c:/Users/maita/posimai-project/posimai-guard/package.json && echo \"---\" && l","ok":true} +{"ts":"2026-04-12T02:43:45.938Z","tool":"Bash","target":"git -C c:/Users/maita/posimai-project/posimai-guard remote -v 2>&1 && echo \"---\"","ok":true} +{"ts":"2026-04-12T02:43:55.049Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-guard/.vercel 2>/dev/null && cat c:/Us","ok":true} +{"ts":"2026-04-12T02:44:00.407Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git status --short | grep \"posimai-guard\" |","ok":true} +{"ts":"2026-04-12T02:44:09.677Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-atlas/.git 2>/dev/null && echo \"atlas:","ok":true} +{"ts":"2026-04-12T02:44:54.824Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && npm run build 2>&1","ok":true} +{"ts":"2026-04-12T02:45:36.502Z","tool":"Write","target":"ScanHeader.tsx","ok":true} +{"ts":"2026-04-12T02:45:46.351Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T02:45:53.444Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T02:46:08.147Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T02:46:14.419Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T02:46:23.831Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T02:46:34.178Z","tool":"Edit","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-12T02:46:42.318Z","tool":"Edit","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-12T02:47:01.580Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && npm run build 2>&1","ok":true} +{"ts":"2026-04-12T02:49:25.553Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git init -b main && git add .","ok":true} +{"ts":"2026-04-12T02:49:38.725Z","tool":"Bash","target":"git -C c:/Users/maita/posimai-project/posimai-guard log --oneline -3 2>&1","ok":true} +{"ts":"2026-04-12T02:50:37.825Z","tool":"Bash","target":"GITEA_URL=\"http://100.76.7.3:3000\"\nGITEA_USER=\"mai\"\nGITEA_PASS=$(printf \"protoco","ok":true} +{"ts":"2026-04-12T02:50:49.684Z","tool":"Bash","target":"gh repo create posimai/posimai-guard --private --description \"AI generated code ","ok":true} +{"ts":"2026-04-12T02:51:56.802Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git remote add gitea http://1","ok":true} +{"ts":"2026-04-12T02:52:03.918Z","tool":"Bash","target":"git -C c:/Users/maita/posimai-project/posimai-guard remote -v 2>&1","ok":true} +{"ts":"2026-04-12T02:53:17.497Z","tool":"Bash","target":"gh repo view posimai/posimai-guard --json pushedAt --jq '.pushedAt' 2>&1","ok":true} +{"ts":"2026-04-12T02:53:39.269Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && vercel --yes 2>&1","ok":true} +{"ts":"2026-04-12T02:54:34.180Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && echo \"2\" | vercel --yes 2>&1 ","ok":true} +{"ts":"2026-04-12T02:54:42.332Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && GEMINI_KEY=$(cat .env.local 2","ok":true} +{"ts":"2026-04-12T02:54:54.188Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && GEMINI_KEY=$(grep GEMINI_API_","ok":true} +{"ts":"2026-04-12T02:55:05.832Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && vercel git connect \"https://g","ok":true} +{"ts":"2026-04-12T02:55:54.881Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && vercel --prod --yes 2>&1","ok":true} +{"ts":"2026-04-12T02:56:09.864Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && vercel domains ls 2>&1 | head","ok":true} +{"ts":"2026-04-12T03:06:01.410Z","tool":"Write","target":"DropZone.tsx","ok":true} +{"ts":"2026-04-12T03:06:07.272Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T03:06:14.223Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T03:06:51.586Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T03:07:30.322Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && npm run build 2>&1","ok":true} +{"ts":"2026-04-12T03:08:38.691Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git add . && git commit -m \"f","ok":true} +{"ts":"2026-04-12T03:08:43.956Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git log --oneline -3 2>&1","ok":true} +{"ts":"2026-04-12T03:09:19.632Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git push gitea main 2>&1","ok":true} +{"ts":"2026-04-12T03:09:24.646Z","tool":"Bash","target":"gh repo view posimai/posimai-guard --json pushedAt --jq '.pushedAt' 2>&1","ok":true} +{"ts":"2026-04-12T03:10:03.298Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git push github main 2>&1","ok":true} +{"ts":"2026-04-12T03:10:24.665Z","tool":"Bash","target":"grep -n \"appCount\\|34\\|アプリ数\\|app.*count\\|count.*app\" c:/Users/maita/posimai-proj","ok":true} +{"ts":"2026-04-12T03:10:53.791Z","tool":"Bash","target":"grep -rn \"34\\b\" c:/Users/maita/posimai-project/posimai-dashboard/src/app/HomeCli","ok":true} +{"ts":"2026-04-12T03:11:10.998Z","tool":"Bash","target":"grep -rn \"34\\|アプリ\\|apps.*count\\|count.*apps\\|本\\b\" c:/Users/maita/posimai-project","ok":true} +{"ts":"2026-04-12T03:11:17.826Z","tool":"Bash","target":"grep -rn \"34\\b\\|本のアプリ\\|本アプリ\\|アプリ数\" c:/Users/maita/posimai-project/posimai-dashbo","ok":true} +{"ts":"2026-04-12T03:11:26.488Z","tool":"Bash","target":"grep -n \"34\\b\" c:/Users/maita/posimai-project/posimai-dashboard/src/app/access/p","ok":true} +{"ts":"2026-04-12T03:11:33.735Z","tool":"Bash","target":"grep -rn \"34\\b\" c:/Users/maita/posimai-project/posimai-dashboard/src/ --include=","ok":true} +{"ts":"2026-04-12T03:11:40.336Z","tool":"Bash","target":"gh repo view posimai/posimai-guard --json pushedAt,defaultBranchRef --jq '{pushe","ok":true} +{"ts":"2026-04-12T03:12:16.186Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git push github main 2>&1 && ","ok":true} +{"ts":"2026-04-12T03:12:27.403Z","tool":"Bash","target":"grep -rn \"34\\|本\\b\" c:/Users/maita/posimai-project/posimai-dashboard/src/app/Home","ok":true} +{"ts":"2026-04-12T03:12:55.329Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-dashboard/.git 2>/dev/null && echo \"da","ok":true} +{"ts":"2026-04-12T03:13:21.683Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-dashboard && git add src/app/apps/page","ok":true} +{"ts":"2026-04-12T03:19:51.046Z","tool":"Bash","target":"cat \"C:/Users/maita/AppData/Local/Temp/claude/c--Users-maita-posimai-project/8cb","ok":true} +{"ts":"2026-04-12T03:22:30.709Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git config http.postBuffer 52","ok":true} +{"ts":"2026-04-12T03:22:34.189Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git log --oneline && echo \"--","ok":true} +{"ts":"2026-04-12T03:22:39.629Z","tool":"Bash","target":"cat \"C:/Users/maita/AppData/Local/Temp/claude/c--Users-maita-posimai-project/8cb","ok":true} +{"ts":"2026-04-12T03:22:46.539Z","tool":"Bash","target":"gh api repos/posimai/posimai-guard --jq '{empty: .size == 0, pushed: .pushed_at}","ok":true} +{"ts":"2026-04-12T03:22:53.851Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git ls-files | wc -l && du -s","ok":true} +{"ts":"2026-04-12T03:23:01.465Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git ls-files | grep \"^node_mo","ok":true} +{"ts":"2026-04-12T03:23:11.547Z","tool":"Bash","target":"cat c:/Users/maita/posimai-project/posimai-guard/.gitignore","ok":true} +{"ts":"2026-04-12T03:23:16.210Z","tool":"Write","target":".gitignore","ok":true} +{"ts":"2026-04-12T03:23:21.360Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && rm -rf .git && git init -b ma","ok":true} +{"ts":"2026-04-12T03:23:28.196Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git commit -m \"feat: posimai-","ok":true} +{"ts":"2026-04-12T03:23:32.729Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git remote add gitea http://1","ok":true} +{"ts":"2026-04-12T03:23:41.032Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git push github main --force ","ok":true} +{"ts":"2026-04-12T03:23:59.682Z","tool":"Bash","target":"gh api repos/posimai/posimai-guard/commits/main --jq '{sha: .sha[0:7], message: ","ok":true} +{"ts":"2026-04-12T03:52:47.428Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && ls src/components/","ok":true} +{"ts":"2026-04-12T04:01:29.951Z","tool":"Write","target":"scanPrompt.ts","ok":true} +{"ts":"2026-04-12T04:01:40.830Z","tool":"Write","target":"scanClient.ts","ok":true} +{"ts":"2026-04-12T04:02:12.977Z","tool":"Write","target":"SettingsPanel.tsx","ok":true} +{"ts":"2026-04-12T04:02:38.051Z","tool":"Write","target":"route.ts","ok":true} +{"ts":"2026-04-12T04:03:25.530Z","tool":"Write","target":"DropZone.tsx","ok":true} +{"ts":"2026-04-12T04:04:49.678Z","tool":"Write","target":"page.tsx","ok":true} +{"ts":"2026-04-12T07:58:03.231Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && ls src/lib/ src/app/api/ && e","ok":true} +{"ts":"2026-04-12T07:58:55.420Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && cat package.json","ok":true} +{"ts":"2026-04-12T07:59:26.117Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -40","ok":true} +{"ts":"2026-04-12T08:00:37.492Z","tool":"Edit","target":"CLAUDE.md","ok":true} +{"ts":"2026-04-12T08:01:10.142Z","tool":"Edit","target":"AGENTS.md","ok":true} +{"ts":"2026-04-12T08:01:19.106Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git log --oneline -5","ok":true} +{"ts":"2026-04-12T08:06:22.151Z","tool":"Write","target":"SettingsPanel.tsx","ok":true} +{"ts":"2026-04-12T08:06:26.489Z","tool":"Bash","target":"mkdir -p \"c:/Users/maita/posimai-project/posimai-guard/src/app/api/scan-claude\"","ok":true} +{"ts":"2026-04-12T08:06:41.453Z","tool":"Write","target":"route.ts","ok":true} +{"ts":"2026-04-12T08:07:02.412Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T08:07:16.516Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T08:07:22.488Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T08:07:28.299Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T08:07:37.067Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T08:07:41.675Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T08:08:00.513Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T08:08:18.742Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -30","ok":true} +{"ts":"2026-04-12T08:08:21.207Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T08:08:41.315Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -25","ok":true} +{"ts":"2026-04-12T08:08:49.099Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git add -A && git commit -m \"","ok":true} +{"ts":"2026-04-12T08:08:58.280Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && npm run deploy 2>&1","ok":true} +{"ts":"2026-04-12T08:09:09.417Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git add CLAUDE.md AGENTS.md && git commit -","ok":true} +{"ts":"2026-04-12T08:18:22.519Z","tool":"Bash","target":"rustc --version 2>&1; cargo --version 2>&1; npx @tauri-apps/cli --version 2>&1 |","ok":true} +{"ts":"2026-04-12T08:18:59.449Z","tool":"Bash","target":"ls -la \"c:/Users/maita/posimai-project/posimai-guard/.vercel/\" 2>/dev/null && ca","ok":true} +{"ts":"2026-04-12T08:19:02.427Z","tool":"Bash","target":"cat \"c:/Users/maita/.claude/projects/c--Users-maita-posimai-project/memory/proje","ok":true} +{"ts":"2026-04-12T08:19:11.496Z","tool":"Bash","target":"cat \"c:/Users/maita/.claude/projects/c--Users-maita-posimai-project/memory/refer","ok":true} +{"ts":"2026-04-12T08:19:21.951Z","tool":"Bash","target":"vercel --version 2>&1 && vercel whoami 2>&1 || echo \"vercel CLI not found or not","ok":true} +{"ts":"2026-04-12T08:19:30.015Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && vercel domains add guard.posi","ok":true} +{"ts":"2026-04-12T08:19:35.503Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && vercel domains ls 2>&1 | grep","ok":true} +{"ts":"2026-04-12T08:19:40.973Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && vercel inspect 2>&1 | grep -i","ok":true} +{"ts":"2026-04-12T08:19:44.753Z","tool":"Bash","target":"curl -s \"https://guard.posimai.soar-enrich.com\" --max-time 10 -o /dev/null -w \"%","ok":true} +{"ts":"2026-04-12T08:20:47.497Z","tool":"Write","target":"DropZone.tsx","ok":true} +{"ts":"2026-04-12T08:21:16.256Z","tool":"Write","target":"SettingsPanel.tsx","ok":true} +{"ts":"2026-04-12T08:21:41.302Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -20","ok":true} +{"ts":"2026-04-12T08:21:55.293Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git add -A && git commit -m \"","ok":true} +{"ts":"2026-04-12T08:31:39.300Z","tool":"Bash","target":"curl -Lo ~/rustup-init.exe https://win.rustup.rs/x86_64 2>&1 && chmod +x ~/rustu","ok":true} +{"ts":"2026-04-12T08:31:46.237Z","tool":"Bash","target":"export PATH=\"$HOME/.cargo/bin:$PATH\" && rustc --version && cargo --version","ok":true} +{"ts":"2026-04-12T08:34:44.316Z","tool":"Bash","target":"export PATH=\"$HOME/.cargo/bin:$PATH\" && cargo install tauri-cli --version \"^2\" 2","ok":true} +{"ts":"2026-04-12T08:35:01.783Z","tool":"Bash","target":"export PATH=\"$HOME/.cargo/bin:$PATH\" && cargo install tauri-cli --version \"^2\" 2","ok":true} +{"ts":"2026-04-12T08:35:13.240Z","tool":"Bash","target":"which gcc 2>&1; ls /mingw64/bin/gcc 2>/dev/null; ls \"C:/Program Files (x86)/Micr","ok":true} +{"ts":"2026-04-12T08:35:23.616Z","tool":"Bash","target":"ls \"C:/Program Files/Microsoft Visual Studio/2022/\" 2>/dev/null && find \"C:/Prog","ok":true} +{"ts":"2026-04-12T08:35:27.321Z","tool":"Bash","target":"find \"/c/Program Files/Microsoft Visual Studio/2022/Community\" -name \"link.exe\" ","ok":true} +{"ts":"2026-04-12T08:35:29.859Z","tool":"Bash","target":"ls \"/c/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/\" 2>/d","ok":true} +{"ts":"2026-04-12T08:38:06.627Z","tool":"Bash","target":"mkdir -p \"c:/Users/maita/posimai-project/posimai-guard-ext/src/commands\" \"c:/Use","ok":true} +{"ts":"2026-04-12T08:38:19.108Z","tool":"Write","target":"package.json","ok":true} +{"ts":"2026-04-12T08:38:24.664Z","tool":"Write","target":"tsconfig.json","ok":true} +{"ts":"2026-04-12T08:38:53.247Z","tool":"Write","target":"prompt.ts","ok":true} +{"ts":"2026-04-12T08:41:36.308Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-guard-ext/","ok":true} +{"ts":"2026-04-12T08:41:49.525Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-guard-ext/media/","ok":true} +{"ts":"2026-04-12T08:42:24.067Z","tool":"Write","target":"fileReader.ts","ok":true} +{"ts":"2026-04-12T08:42:37.941Z","tool":"Write","target":"geminiClient.ts","ok":true} +{"ts":"2026-04-12T08:42:45.387Z","tool":"Write","target":"claudeClient.ts","ok":true} +{"ts":"2026-04-12T08:42:54.449Z","tool":"Write","target":"diagnostics.ts","ok":true} +{"ts":"2026-04-12T08:43:18.459Z","tool":"Write","target":"resultsPanel.ts","ok":true} +{"ts":"2026-04-12T08:43:35.323Z","tool":"Write","target":"scanWorkspace.ts","ok":true} +{"ts":"2026-04-12T08:43:47.439Z","tool":"Write","target":"scanFile.ts","ok":true} +{"ts":"2026-04-12T08:43:59.894Z","tool":"Write","target":"extension.ts","ok":true} +{"ts":"2026-04-12T08:44:24.603Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard-ext && node -e \"\n// Minimal 1x1 ","ok":true} +{"ts":"2026-04-12T08:44:47.971Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard-ext && npm install 2>&1 | tail -","ok":true} +{"ts":"2026-04-12T08:44:54.608Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard-ext && npm run build 2>&1","ok":true} +{"ts":"2026-04-12T08:45:12.927Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard-ext && npm run package 2>&1","ok":true} +{"ts":"2026-04-12T08:45:17.742Z","tool":"Write","target":".vscodeignore","ok":true} +{"ts":"2026-04-12T08:45:23.602Z","tool":"Write","target":"LICENSE","ok":true} +{"ts":"2026-04-12T08:45:27.772Z","tool":"Edit","target":"package.json","ok":true} +{"ts":"2026-04-12T08:45:43.770Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard-ext && npm run package 2>&1","ok":true} +{"ts":"2026-04-12T08:45:52.093Z","tool":"Bash","target":"code --install-extension \"c:/Users/maita/posimai-project/posimai-guard-ext/posim","ok":true} +{"ts":"2026-04-12T08:45:55.522Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git add posimai-guard-ext/ && git status --","ok":true} +{"ts":"2026-04-12T08:46:01.715Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git commit -m \"$(cat <<'EOF'\nfeat: VS Code拡","ok":true} +{"ts":"2026-04-12T09:12:45.811Z","tool":"Bash","target":"powershell -Command \"Get-Process | Sort-Object WorkingSet64 -Descending | Select","ok":true} +{"ts":"2026-04-12T09:12:47.700Z","tool":"Bash","target":"powershell -Command \"[math]::Round((Get-CimInstance Win32_OperatingSystem | Sele","ok":true} +{"ts":"2026-04-12T09:12:57.897Z","tool":"Bash","target":"powershell -Command \"\n\\$os = Get-CimInstance Win32_OperatingSystem\n\\$total = [ma","ok":true} +{"ts":"2026-04-12T09:18:28.220Z","tool":"Bash","target":"powershell -Command \"\\$os = Get-CimInstance Win32_OperatingSystem; \\$free = [mat","ok":true} +{"ts":"2026-04-12T09:25:21.726Z","tool":"Bash","target":"cursor --install-extension \"c:/Users/maita/posimai-project/posimai-guard-ext/pos","ok":true} +{"ts":"2026-04-12T09:35:38.954Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git log --oneline -5 -- posimai-guard/","ok":true} +{"ts":"2026-04-12T09:36:35.596Z","tool":"Edit","target":"globals.css","ok":true} +{"ts":"2026-04-12T09:36:46.624Z","tool":"Edit","target":"globals.css","ok":true} +{"ts":"2026-04-12T09:36:53.932Z","tool":"Edit","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-12T09:37:06.481Z","tool":"Edit","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-12T09:37:16.909Z","tool":"Edit","target":"ScanningView.tsx","ok":true} +{"ts":"2026-04-12T09:37:23.299Z","tool":"Edit","target":"ScanningView.tsx","ok":true} +{"ts":"2026-04-12T09:37:51.252Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -20","ok":true} +{"ts":"2026-04-12T09:38:33.697Z","tool":"Write","target":"BinaryAurora.tsx","ok":true} +{"ts":"2026-04-12T09:38:38.334Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T09:38:43.486Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T09:39:19.673Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -15","ok":true} +{"ts":"2026-04-12T09:39:27.754Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git add posimai-guard/ && git commit -m \"$(","ok":true} +{"ts":"2026-04-12T09:39:36.120Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git remote -v && git log --on","ok":true} +{"ts":"2026-04-12T09:39:37.331Z","tool":"Bash","target":"cat c:/Users/maita/posimai-project/posimai-guard/package.json | grep -E '\"deploy","ok":true} +{"ts":"2026-04-12T09:39:53.165Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git add -A && git commit -m \"","ok":true} +{"ts":"2026-04-12T09:46:53.001Z","tool":"Edit","target":"BinaryAurora.tsx","ok":true} +{"ts":"2026-04-12T09:47:04.205Z","tool":"Edit","target":"BinaryAurora.tsx","ok":true} +{"ts":"2026-04-12T09:47:07.655Z","tool":"Edit","target":"BinaryAurora.tsx","ok":true} +{"ts":"2026-04-12T09:47:33.894Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -5","ok":true} +{"ts":"2026-04-12T09:47:47.019Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git add -A && git commit -m \"","ok":true} +{"ts":"2026-04-12T09:52:03.121Z","tool":"Edit","target":"BinaryAurora.tsx","ok":true} +{"ts":"2026-04-12T09:52:08.559Z","tool":"Edit","target":"BinaryAurora.tsx","ok":true} +{"ts":"2026-04-12T09:52:14.759Z","tool":"Edit","target":"BinaryAurora.tsx","ok":true} +{"ts":"2026-04-12T09:52:18.426Z","tool":"Edit","target":"BinaryAurora.tsx","ok":true} +{"ts":"2026-04-12T09:52:36.466Z","tool":"Write","target":"route.ts","ok":true} +{"ts":"2026-04-12T09:53:04.314Z","tool":"Write","target":"DepResults.tsx","ok":true} +{"ts":"2026-04-12T09:53:12.809Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T09:53:19.968Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T09:53:30.474Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T09:53:48.218Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T09:54:14.499Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | grep -E ","ok":true} +{"ts":"2026-04-12T09:54:28.168Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git add -A && git commit -m \"","ok":true} +{"ts":"2026-04-12T09:57:35.749Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-station-app/src/ 2>/dev/null || echo \"","ok":true} +{"ts":"2026-04-12T09:58:33.884Z","tool":"Edit","target":"BinaryAurora.tsx","ok":true} +{"ts":"2026-04-12T09:58:39.786Z","tool":"Edit","target":"BinaryAurora.tsx","ok":true} +{"ts":"2026-04-12T09:59:06.438Z","tool":"Edit","target":"DropZone.tsx","ok":true} +{"ts":"2026-04-12T09:59:37.564Z","tool":"Write","target":"scanGitHistory.ts","ok":true} +{"ts":"2026-04-12T09:59:43.906Z","tool":"Edit","target":"extension.ts","ok":true} +{"ts":"2026-04-12T09:59:48.389Z","tool":"Edit","target":"extension.ts","ok":true} +{"ts":"2026-04-12T09:59:53.838Z","tool":"Edit","target":"package.json","ok":true} +{"ts":"2026-04-12T09:59:58.597Z","tool":"Edit","target":"package.json","ok":true} +{"ts":"2026-04-12T10:00:25.814Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard-ext && npm run package 2>&1 | ta","ok":true} +{"ts":"2026-04-12T10:00:50.609Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | grep -E ","ok":true} +{"ts":"2026-04-12T10:00:57.171Z","tool":"Bash","target":"cursor --install-extension \"c:/Users/maita/posimai-project/posimai-guard-ext/pos","ok":true} +{"ts":"2026-04-12T10:01:07.116Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git add -A && git commit -m \"","ok":true} +{"ts":"2026-04-12T10:29:38.886Z","tool":"Edit","target":"DropZone.tsx","ok":true} +{"ts":"2026-04-12T10:29:53.726Z","tool":"Write","target":"ScoreChart.tsx","ok":true} +{"ts":"2026-04-12T10:30:24.837Z","tool":"Write","target":"IacResults.tsx","ok":true} +{"ts":"2026-04-12T10:30:30.590Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T10:30:34.284Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T10:30:39.520Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T10:30:57.638Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T10:32:03.288Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | grep -E ","ok":true} +{"ts":"2026-04-12T10:33:10.999Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -20","ok":true} +{"ts":"2026-04-12T10:33:28.347Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git add -A && git commit -m \"","ok":true} +{"ts":"2026-04-12T12:02:03.574Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git remote -v","ok":true} +{"ts":"2026-04-12T12:02:03.897Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard-ext && git remote -v 2>/dev/null","ok":true} +{"ts":"2026-04-12T12:02:07.252Z","tool":"Bash","target":"gh repo view posimai/posimai-root --json visibility,name 2>/dev/null || echo \"gh","ok":true} +{"ts":"2026-04-12T12:02:11.450Z","tool":"Bash","target":"cat c:/Users/maita/posimai-project/.gitignore | grep -i vsix || echo \"vsix エントリな","ok":true} +{"ts":"2026-04-12T12:02:17.665Z","tool":"Edit","target":".gitignore","ok":true} +{"ts":"2026-04-12T12:02:21.910Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git rm --cached posimai-guard-ext/posimai-g","ok":true} +{"ts":"2026-04-12T12:02:25.493Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project && git add .gitignore && git commit -m \"$(cat ","ok":true} +{"ts":"2026-04-12T12:04:57.048Z","tool":"Write","target":"route.ts","ok":true} +{"ts":"2026-04-12T12:05:45.117Z","tool":"Write","target":"DepResults.tsx","ok":true} +{"ts":"2026-04-12T12:05:53.109Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T12:05:59.308Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T12:06:06.866Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T12:06:10.981Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T12:06:42.040Z","tool":"Write","target":"scanDeps.ts","ok":true} +{"ts":"2026-04-12T12:06:52.276Z","tool":"Edit","target":"extension.ts","ok":true} +{"ts":"2026-04-12T12:06:56.913Z","tool":"Edit","target":"extension.ts","ok":true} +{"ts":"2026-04-12T12:07:01.354Z","tool":"Edit","target":"package.json","ok":true} +{"ts":"2026-04-12T12:07:07.639Z","tool":"Edit","target":"package.json","ok":true} +{"ts":"2026-04-12T12:07:13.547Z","tool":"Edit","target":"package.json","ok":true} +{"ts":"2026-04-12T12:07:35.341Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -8","ok":true} +{"ts":"2026-04-12T12:07:43.480Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard-ext && npm run package 2>&1 | ta","ok":true} +{"ts":"2026-04-12T12:07:56.966Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git add -A && git commit -m \"","ok":true} +{"ts":"2026-04-12T12:07:59.184Z","tool":"Bash","target":"cursor --install-extension \"c:/Users/maita/posimai-project/posimai-guard-ext/pos","ok":true} +{"ts":"2026-04-12T12:16:17.810Z","tool":"Write","target":"BinaryAurora.tsx","ok":true} +{"ts":"2026-04-12T12:19:09.511Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -20","ok":true} +{"ts":"2026-04-12T12:19:20.663Z","tool":"Bash","target":"git add src/components/BinaryAurora.tsx && git commit -m \"fix(aurora): trimodal ","ok":true} +{"ts":"2026-04-12T12:19:51.422Z","tool":"Bash","target":"grep -rn \"Guard\" /c/Users/maita/posimai-project/posimai-guard/src --include=\"*.t","ok":true} +{"ts":"2026-04-12T12:19:54.345Z","tool":"Bash","target":"grep -n \"Guard\\|Posimai\\|posimai\" /c/Users/maita/posimai-project/posimai-guard/s","ok":true} +{"ts":"2026-04-12T12:19:57.238Z","tool":"Bash","target":"grep -n \"Guard\\|title\\|h1\\|header\" /c/Users/maita/posimai-project/posimai-guard/","ok":true} +{"ts":"2026-04-12T12:20:08.289Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T12:20:17.503Z","tool":"Edit","target":"layout.tsx","ok":true} +{"ts":"2026-04-12T12:20:41.835Z","tool":"Bash","target":"npm run build 2>&1 | tail -10","ok":true} +{"ts":"2026-04-12T12:20:52.555Z","tool":"Bash","target":"git add src/app/page.tsx src/app/layout.tsx && git commit -m \"chore: rename Guar","ok":true} +{"ts":"2026-04-12T12:24:45.533Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -name \"BinaryAurora*\" -o -name \"*aurora*\" -o","ok":true} +{"ts":"2026-04-12T12:25:06.869Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -name \"*.tsx\" | xargs grep -l \"aurora\\|Auror","ok":true} +{"ts":"2026-04-12T12:25:31.925Z","tool":"Bash","target":"find /c/Users/maita/posimai-project -path \"*/station*/*.tsx\" 2>/dev/null | grep ","ok":true} +{"ts":"2026-04-12T12:25:34.856Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/","ok":true} +{"ts":"2026-04-12T12:25:38.065Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/posimai-station-app -name \"*.tsx\" | grep -v ","ok":true} +{"ts":"2026-04-12T12:25:40.207Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-station-app/","ok":true} +{"ts":"2026-04-12T12:25:43.316Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/posimai-station-app/renderer -name \"*.js\" -o","ok":true} +{"ts":"2026-04-12T12:25:46.059Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-station-app/renderer/","ok":true} +{"ts":"2026-04-12T12:25:51.190Z","tool":"Bash","target":"grep -n \"aurora\\|Aurora\\|binary\\|canvas\\|0.*1\\|drops\\|fillText\\|charAge\" /c/User","ok":true} +{"ts":"2026-04-12T12:25:55.026Z","tool":"Bash","target":"grep -n \"\" /c/Users/maita/posimai-project/posimai-station-app/renderer/station-b","ok":true} +{"ts":"2026-04-12T12:26:55.569Z","tool":"Write","target":"BinaryAurora.tsx","ok":true} +{"ts":"2026-04-12T12:27:18.575Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -15","ok":true} +{"ts":"2026-04-12T12:27:21.538Z","tool":"Edit","target":"BinaryAurora.tsx","ok":true} +{"ts":"2026-04-12T12:27:47.404Z","tool":"Bash","target":"npm run build 2>&1 | tail -10","ok":true} +{"ts":"2026-04-12T12:27:59.041Z","tool":"Bash","target":"git add src/components/BinaryAurora.tsx && git commit -m \"fix(aurora): rewrite t","ok":true} +{"ts":"2026-04-12T12:35:56.874Z","tool":"Bash","target":"grep -n \"font\\|Font\\|JetBrains\\|monospace\" /c/Users/maita/posimai-project/DESIGN","ok":true} +{"ts":"2026-04-12T12:36:00.816Z","tool":"Bash","target":"grep -n \"font\\|Font\\|Inter\\|sans\" /c/Users/maita/posimai-project/DESIGN.md | hea","ok":true} +{"ts":"2026-04-12T12:36:03.743Z","tool":"Bash","target":"grep -n \"Inter\\|JetBrains\\|monospace\\|code\\|font\" /c/Users/maita/posimai-project","ok":true} +{"ts":"2026-04-12T12:36:40.524Z","tool":"Bash","target":"grep -n \"background\\|--bg\\|0B0B0B\\|0D0D0D\" /c/Users/maita/posimai-project/posima","ok":true} +{"ts":"2026-04-12T12:36:43.474Z","tool":"Bash","target":"grep -n \"\" /c/Users/maita/posimai-project/posimai-guard/src/app/globals.css | se","ok":true} +{"ts":"2026-04-12T12:36:56.153Z","tool":"Bash","target":"grep -n \"title\\|description\\|severity\\|danger\\|card\\|issue\" /c/Users/maita/posim","ok":true} +{"ts":"2026-04-12T12:36:59.535Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-guard/src/components/","ok":true} +{"ts":"2026-04-12T12:37:18.635Z","tool":"Edit","target":"layout.tsx","ok":true} +{"ts":"2026-04-12T12:37:22.603Z","tool":"Edit","target":"layout.tsx","ok":true} +{"ts":"2026-04-12T12:37:26.500Z","tool":"Edit","target":"layout.tsx","ok":true} +{"ts":"2026-04-12T12:37:44.742Z","tool":"Edit","target":"globals.css","ok":true} +{"ts":"2026-04-12T12:37:49.312Z","tool":"Edit","target":"globals.css","ok":true} +{"ts":"2026-04-12T12:37:54.093Z","tool":"Edit","target":"globals.css","ok":true} +{"ts":"2026-04-12T12:38:02.749Z","tool":"Edit","target":"BinaryAurora.tsx","ok":true} +{"ts":"2026-04-12T12:38:08.617Z","tool":"Edit","target":"BinaryAurora.tsx","ok":true} +{"ts":"2026-04-12T12:38:15.032Z","tool":"Edit","target":"BinaryAurora.tsx","ok":true} +{"ts":"2026-04-12T12:38:21.921Z","tool":"Edit","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-12T12:38:33.986Z","tool":"Edit","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-12T12:38:48.572Z","tool":"Edit","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-12T12:39:14.136Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -15","ok":true} +{"ts":"2026-04-12T12:39:26.309Z","tool":"Bash","target":"git add src/app/globals.css src/app/layout.tsx src/components/BinaryAurora.tsx s","ok":true} +{"ts":"2026-04-12T12:59:49.206Z","tool":"Edit","target":"BinaryAurora.tsx","ok":true} +{"ts":"2026-04-12T13:00:04.569Z","tool":"Edit","target":"BinaryAurora.tsx","ok":true} +{"ts":"2026-04-12T13:00:37.245Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -6 ","ok":true} +{"ts":"2026-04-12T13:00:42.160Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/ | grep guard","ok":true} +{"ts":"2026-04-12T13:00:45.291Z","tool":"Bash","target":"rustup --version 2>/dev/null && cargo --version 2>/dev/null || echo \"Rust not in","ok":true} +{"ts":"2026-04-12T13:00:48.597Z","tool":"Bash","target":"cargo --list 2>/dev/null | head -5; rustc --version","ok":true} +{"ts":"2026-04-12T13:00:52.033Z","tool":"Bash","target":"where cl 2>/dev/null || echo \"MSVC not found\"; where link 2>/dev/null || echo \"M","ok":true} +{"ts":"2026-04-12T13:01:17.742Z","tool":"Bash","target":"mkdir -p /c/Users/maita/posimai-project/posimai-guard-app/src-tauri/src /c/Users","ok":true} +{"ts":"2026-04-12T13:01:24.273Z","tool":"Write","target":"package.json","ok":true} +{"ts":"2026-04-12T13:01:30.096Z","tool":"Write","target":"vite.config.ts","ok":true} +{"ts":"2026-04-12T13:01:36.838Z","tool":"Write","target":"tsconfig.json","ok":true} +{"ts":"2026-04-12T13:01:44.217Z","tool":"Write","target":"index.html","ok":true} +{"ts":"2026-04-12T13:01:54.552Z","tool":"Write","target":"tauri.conf.json","ok":true} +{"ts":"2026-04-12T13:02:01.660Z","tool":"Write","target":"Cargo.toml","ok":true} +{"ts":"2026-04-12T13:02:05.326Z","tool":"Write","target":"build.rs","ok":true} +{"ts":"2026-04-12T13:02:09.459Z","tool":"Write","target":"main.rs","ok":true} +{"ts":"2026-04-12T13:02:23.673Z","tool":"Write","target":"lib.rs","ok":true} +{"ts":"2026-04-12T13:02:29.774Z","tool":"Write","target":"main.tsx","ok":true} +{"ts":"2026-04-12T13:02:42.435Z","tool":"Write","target":"index.css","ok":true} +{"ts":"2026-04-12T13:03:49.977Z","tool":"Write","target":"App.tsx","ok":true} +{"ts":"2026-04-12T13:04:14.800Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard-app && npm install 2>&1 | tail -","ok":true} +{"ts":"2026-04-12T13:04:23.710Z","tool":"Bash","target":"npx vite build 2>&1 | tail -10","ok":true} +{"ts":"2026-04-12T13:04:59.281Z","tool":"Bash","target":"npx tauri info 2>&1 | head -30","ok":true} +{"ts":"2026-04-12T13:05:07.128Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project && git add posimai-guard-app/ && git commit -m","ok":true} +{"ts":"2026-04-12T13:06:35.290Z","tool":"Bash","target":"powershell -Command \"Invoke-WebRequest -Uri 'https://aka.ms/vs/17/release/vs_Bui","ok":true} +{"ts":"2026-04-12T13:06:40.077Z","tool":"Bash","target":"powershell -ExecutionPolicy Bypass -Command \"& { [Net.ServicePointManager]::Secu","ok":true} +{"ts":"2026-04-12T13:06:44.727Z","tool":"Bash","target":"curl -L -o \"$TEMP/vs_BuildTools.exe\" \"https://aka.ms/vs/17/release/vs_BuildTools","ok":true} +{"ts":"2026-04-12T13:06:51.296Z","tool":"Bash","target":"powershell -ExecutionPolicy Bypass -Command \"Start-Process -FilePath '$env:TEMP\\","ok":true} +{"ts":"2026-04-12T13:07:02.030Z","tool":"Bash","target":"where cl 2>/dev/null || powershell -Command \"Get-Command cl -ErrorAction Silentl","ok":true} +{"ts":"2026-04-12T13:07:05.940Z","tool":"Bash","target":"powershell -Command \"Get-ChildItem 'C:\\Program Files (x86)\\Microsoft Visual Stud","ok":true} +{"ts":"2026-04-12T13:09:11.234Z","tool":"Bash","target":"powershell -Command \"Get-ChildItem 'C:\\Program Files\\Microsoft Visual Studio' -R","ok":true} +{"ts":"2026-04-12T13:09:18.905Z","tool":"Bash","target":"ls \"/c/Program Files (x86)/Microsoft Visual Studio/\" 2>/dev/null || ls \"/c/Progr","ok":true} +{"ts":"2026-04-12T13:09:22.124Z","tool":"Bash","target":"ls \"/c/Program Files (x86)/Microsoft Visual Studio/Installer/\" 2>/dev/null\nfind ","ok":true} +{"ts":"2026-04-12T13:09:28.413Z","tool":"Bash","target":"\"/c/Program Files (x86)/Microsoft Visual Studio/Installer/vswhere.exe\" -all -for","ok":true} +{"ts":"2026-04-12T13:09:32.025Z","tool":"Bash","target":"cat \"C:\\Users\\maita\\AppData\\Local\\Temp\\claude\\c--Users-maita-posimai-project\\8cb","ok":true} +{"ts":"2026-04-12T13:09:38.603Z","tool":"Bash","target":"ls /tmp/vs_BuildTools.exe && echo \"File exists at /tmp/\"","ok":true} +{"ts":"2026-04-12T13:09:43.660Z","tool":"Bash","target":"powershell -ExecutionPolicy Bypass -Command \"Start-Process -FilePath 'C:\\Users\\m","ok":true} +{"ts":"2026-04-12T13:09:56.839Z","tool":"Bash","target":"find \"/c/Program Files (x86)/Microsoft Visual Studio/\" -name \"cl.exe\" 2>/dev/nul","ok":true} +{"ts":"2026-04-12T13:10:01.077Z","tool":"Bash","target":"cat \"/c/Users/maita/AppData/Local/Temp/claude/c--Users-maita-posimai-project/8cb","ok":true} +{"ts":"2026-04-12T13:10:44.117Z","tool":"Bash","target":"powershell -Command \"Get-Process | Where-Object {$_.Name -like '*setup*' -or $_.","ok":true} +{"ts":"2026-04-12T13:10:49.579Z","tool":"Bash","target":"powershell.exe -NoProfile -Command \"Get-Process | Where-Object { \\$_.Name -like ","ok":true} +{"ts":"2026-04-12T13:10:58.956Z","tool":"Bash","target":"powershell.exe -NoProfile -Command \"\n\\$timeout = 1800\n\\$elapsed = 0\nwhile (\\$ela","ok":true} +{"ts":"2026-04-12T13:11:56.390Z","tool":"Bash","target":"cat \"/c/Users/maita/AppData/Local/Temp/claude/c--Users-maita-posimai-project/8cb","ok":true} +{"ts":"2026-04-12T13:13:16.205Z","tool":"Bash","target":"cat \"/c/Users/maita/AppData/Local/Temp/claude/c--Users-maita-posimai-project/8cb","ok":true} +{"ts":"2026-04-12T13:13:21.098Z","tool":"Bash","target":"powershell.exe -NoProfile -Command \"Get-Process | Where-Object { \\$_.Name -like ","ok":true} +{"ts":"2026-04-12T13:18:49.226Z","tool":"Bash","target":"cat \"/c/Users/maita/AppData/Local/Temp/claude/c--Users-maita-posimai-project/8cb","ok":true} +{"ts":"2026-04-12T13:19:23.700Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/_template/src/ 2>/dev/null || ls /c/Users/mait","ok":true} +{"ts":"2026-04-12T13:19:30.739Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/_template-minimal/ 2>/dev/null","ok":true} +{"ts":"2026-04-12T13:20:16.979Z","tool":"Write","target":"posimai-bg.md","ok":true} +{"ts":"2026-04-12T13:20:33.015Z","tool":"Edit","target":"DESIGN.md","ok":true} +{"ts":"2026-04-12T13:20:38.566Z","tool":"Bash","target":"git add docs/posimai-bg.md DESIGN.md && git commit -m \"docs: add posimai-bg.md a","ok":true} +{"ts":"2026-04-12T13:20:48.586Z","tool":"Bash","target":"cat \"/c/Users/maita/AppData/Local/Temp/claude/c--Users-maita-posimai-project/8cb","ok":true} +{"ts":"2026-04-12T13:25:09.701Z","tool":"Bash","target":"find \"/c/Program Files (x86)/Microsoft Visual Studio/\" -name \"cl.exe\" 2>/dev/nul","ok":true} +{"ts":"2026-04-12T13:25:51.705Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard-app && npx tauri info 2>&1 | hea","ok":true} +{"ts":"2026-04-12T13:25:56.441Z","tool":"Bash","target":"npm run tauri:dev 2>&1","ok":true} +{"ts":"2026-04-12T13:26:06.384Z","tool":"Bash","target":"tail -20 \"/c/Users/maita/AppData/Local/Temp/claude/c--Users-maita-posimai-projec","ok":true} +{"ts":"2026-04-12T13:28:38.828Z","tool":"Bash","target":"tail -30 \"/c/Users/maita/AppData/Local/Temp/claude/c--Users-maita-posimai-projec","ok":true} +{"ts":"2026-04-12T13:28:59.236Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-guard/public/ 2>/dev/null","ok":true} +{"ts":"2026-04-12T13:29:15.801Z","tool":"Bash","target":"mkdir -p /c/Users/maita/posimai-project/posimai-guard-app/src-tauri/icons\n# SVG ","ok":true} +{"ts":"2026-04-12T13:29:37.035Z","tool":"Bash","target":"node -e \"\nconst fs = require('fs');\nconst zlib = require('zlib');\nfunction creat","ok":true} +{"ts":"2026-04-12T13:29:45.959Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard-app && npx tauri icon guard-icon","ok":true} +{"ts":"2026-04-12T13:29:56.706Z","tool":"Edit","target":"Cargo.toml","ok":true} +{"ts":"2026-04-12T13:30:01.215Z","tool":"Bash","target":"rm -f guard-icon.png && npm run tauri:dev 2>&1","ok":true} +{"ts":"2026-04-12T13:30:17.957Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/posimai-guard/src/lib/scanPrompt.ts","ok":true} +{"ts":"2026-04-12T13:30:22.079Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/posimai-guard/src/lib/scanSchema.ts","ok":true} +{"ts":"2026-04-12T13:30:36.182Z","tool":"Edit","target":"scanSchema.ts","ok":true} +{"ts":"2026-04-12T13:30:45.580Z","tool":"Edit","target":"scanPrompt.ts","ok":true} +{"ts":"2026-04-12T13:30:55.052Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T13:31:14.777Z","tool":"Edit","target":"BinaryAurora.tsx","ok":true} +{"ts":"2026-04-12T13:31:27.593Z","tool":"Edit","target":"BinaryAurora.tsx","ok":true} +{"ts":"2026-04-12T13:31:32.559Z","tool":"Edit","target":"BinaryAurora.tsx","ok":true} +{"ts":"2026-04-12T13:31:43.924Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T13:31:51.193Z","tool":"Bash","target":"grep -n \"status: 'scanning'\\|status: 'results'\\|status: 'idle'\" /c/Users/maita/p","ok":true} +{"ts":"2026-04-12T13:31:58.079Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T13:32:02.992Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T13:32:11.590Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T13:32:16.808Z","tool":"Bash","target":"grep -n \"BinaryAurora\" /c/Users/maita/posimai-project/posimai-guard/src/app/page","ok":true} +{"ts":"2026-04-12T13:32:20.940Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-12T13:32:32.001Z","tool":"Edit","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-12T13:33:04.707Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -15","ok":true} +{"ts":"2026-04-12T13:33:16.999Z","tool":"Bash","target":"git add src/ && git commit -m \"feat: attacker POV story, aurora reacts to scan s","ok":true} +{"ts":"2026-04-12T13:33:22.542Z","tool":"Bash","target":"tail -15 \"/c/Users/maita/AppData/Local/Temp/claude/c--Users-maita-posimai-projec","ok":true} +{"ts":"2026-04-12T13:35:36.256Z","tool":"Bash","target":"mkdir -p /c/Users/maita/posimai-project/posimai-guard-app/src-tauri/capabilities","ok":true} +{"ts":"2026-04-12T13:35:41.381Z","tool":"Write","target":"default.json","ok":true} +{"ts":"2026-04-12T13:35:51.390Z","tool":"Edit","target":"tauri.conf.json","ok":true} +{"ts":"2026-04-12T13:35:56.830Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard-app && npm run tauri:dev 2>&1 &\n","ok":true} +{"ts":"2026-04-12T13:36:21.135Z","tool":"Bash","target":"tail -30 \"/c/Users/maita/AppData/Local/Temp/claude/c--Users-maita-posimai-projec","ok":true} +{"ts":"2026-04-12T13:36:35.843Z","tool":"Bash","target":"powershell.exe -NoProfile -Command \"Get-NetTCPConnection -LocalPort 1420 -ErrorA","ok":true} +{"ts":"2026-04-12T13:36:39.493Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard-app && npm run tauri:dev 2>&1","ok":true} +{"ts":"2026-04-12T13:36:42.129Z","tool":"Bash","target":"tail -20 \"/c/Users/maita/AppData/Local/Temp/claude/c--Users-maita-posimai-projec","ok":true} +{"ts":"2026-04-12T13:36:45.553Z","tool":"Bash","target":"cat \"/c/Users/maita/AppData/Local/Temp/claude/c--Users-maita-posimai-project/8cb","ok":true} +{"ts":"2026-04-12T13:39:42.710Z","tool":"Bash","target":"tail -20 \"/c/Users/maita/AppData/Local/Temp/claude/c--Users-maita-posimai-projec","ok":true} +{"ts":"2026-04-12T13:42:38.626Z","tool":"Edit","target":"tauri.conf.json","ok":true} +{"ts":"2026-04-12T13:42:44.551Z","tool":"Write","target":"package.json","ok":true} +{"ts":"2026-04-12T13:42:56.634Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npm install @tauri-apps/api@^","ok":true} +{"ts":"2026-04-12T13:43:10.044Z","tool":"Write","target":"tauri.ts","ok":true} +{"ts":"2026-04-12T13:43:33.142Z","tool":"Edit","target":"DropZone.tsx","ok":true} +{"ts":"2026-04-12T13:46:42.130Z","tool":"Bash","target":"npm run build 2>&1 | tail -30","ok":true} +{"ts":"2026-04-13T00:17:10.983Z","tool":"Bash","target":"git log --oneline -8 2>&1","ok":true} +{"ts":"2026-04-13T00:17:11.078Z","tool":"Bash","target":"git status --short 2>&1 | head -40","ok":true} +{"ts":"2026-04-13T00:17:13.840Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && git log --oneline -8 2>&1","ok":true} +{"ts":"2026-04-13T00:17:14.459Z","tool":"Bash","target":"git status --short 2>&1","ok":true} +{"ts":"2026-04-13T00:17:17.144Z","tool":"Bash","target":"cat src/components/ScanResults.tsx | head -100","ok":true} +{"ts":"2026-04-13T00:17:18.005Z","tool":"Bash","target":"grep -n \"borderLeft\\|border-left\\|left.*border\\|leftBorder\" src/components/ScanR","ok":true} +{"ts":"2026-04-13T00:17:23.382Z","tool":"Bash","target":"grep -rn \"borderLeft\\|border-left\" src/components/ src/app/ 2>/dev/null","ok":true} +{"ts":"2026-04-13T00:17:24.257Z","tool":"Bash","target":"wc -l src/components/ScanResults.tsx && cat src/components/ScanResults.tsx | tai","ok":true} +{"ts":"2026-04-13T00:17:31.259Z","tool":"Bash","target":"grep -n \"borderLeft\" src/components/DepResults.tsx src/components/IacResults.tsx","ok":true} +{"ts":"2026-04-13T00:17:32.452Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/DESIGN.md | tail -60","ok":true} +{"ts":"2026-04-13T00:17:36.250Z","tool":"Bash","target":"grep -n \"borderLeft\\|left.*border\" src/components/DepResults.tsx | head -10 && s","ok":true} +{"ts":"2026-04-13T00:17:36.366Z","tool":"Bash","target":"sed -n '35,55p' src/components/IacResults.tsx","ok":true} +{"ts":"2026-04-13T00:17:59.080Z","tool":"Edit","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-13T00:18:00.645Z","tool":"Edit","target":"DepResults.tsx","ok":true} +{"ts":"2026-04-13T00:18:01.810Z","tool":"Edit","target":"IacResults.tsx","ok":true} +{"ts":"2026-04-13T00:18:08.896Z","tool":"Edit","target":"DepResults.tsx","ok":true} +{"ts":"2026-04-13T00:18:15.006Z","tool":"Bash","target":"grep -n \"## 9\\.\" /c/Users/maita/posimai-project/DESIGN.md","ok":true} +{"ts":"2026-04-13T00:18:27.457Z","tool":"Edit","target":"DESIGN.md","ok":true} +{"ts":"2026-04-13T00:18:50.311Z","tool":"Bash","target":"npm run build 2>&1 | tail -20","ok":true} +{"ts":"2026-04-13T00:18:54.082Z","tool":"Bash","target":"git add src/components/ScanResults.tsx src/components/DepResults.tsx src/compone","ok":true} +{"ts":"2026-04-13T00:19:00.800Z","tool":"Bash","target":"git commit -m \"$(cat <<'EOF'\nfeat(tauri): Tauri bridge + native folder picker; r","ok":true} +{"ts":"2026-04-13T00:19:09.683Z","tool":"Bash","target":"npm run deploy 2>&1","ok":true} +{"ts":"2026-04-13T00:19:14.178Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project && git add DESIGN.md && git commit -m \"$(cat <","ok":true} +{"ts":"2026-04-13T00:20:28.394Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/STATUS.md 2>/dev/null | head -80","ok":true} +{"ts":"2026-04-13T00:20:29.287Z","tool":"Bash","target":"cat /c/Users/maita/.claude/projects/c--Users-maita-posimai-project/memory/projec","ok":true} +{"ts":"2026-04-13T00:20:34.715Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && git log --oneline -5 2>/dev/n","ok":true} +{"ts":"2026-04-13T00:20:36.158Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-guard-app/src-tauri/src/ 2>/dev/null &","ok":true} +{"ts":"2026-04-13T00:20:36.987Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-guard-app/src-tauri/target/release/ 2>","ok":true} +{"ts":"2026-04-13T00:20:39.609Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-guard-app/src-tauri/target/ 2>/dev/nul","ok":true} +{"ts":"2026-04-13T00:20:41.274Z","tool":"Bash","target":"node scripts/check-registrations.js posimai-guard 2>/dev/null | head -20","ok":true} +{"ts":"2026-04-13T00:20:44.752Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project && node scripts/check-registrations.js posimai","ok":true} +{"ts":"2026-04-13T00:20:44.909Z","tool":"Bash","target":"grep -r \"posimai-guard\" /c/Users/maita/posimai-project/posimai-dashboard/src/dat","ok":true} +{"ts":"2026-04-13T00:31:01.742Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/posimai-guard-app/src-tauri/target -name \"*.","ok":true} +{"ts":"2026-04-13T00:31:02.999Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/posimai-guard-app/src-tauri/target -name \"*.","ok":true} +{"ts":"2026-04-13T00:31:06.435Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/posimai-guard-app/src-tauri/target/debug -ma","ok":true} +{"ts":"2026-04-13T00:31:07.216Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/posimai-guard-app/src-tauri/target -maxdepth","ok":true} +{"ts":"2026-04-13T00:31:11.032Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/posimai-guard/src/app/page.tsx | wc -l && cat","ok":true} +{"ts":"2026-04-13T00:31:12.441Z","tool":"Bash","target":"grep -n \"useState\\|const.*=\\|function\\|interface\\|type \" /c/Users/maita/posimai-","ok":true} +{"ts":"2026-04-13T00:31:15.302Z","tool":"Bash","target":"sed -n '200,350p' /c/Users/maita/posimai-project/posimai-guard/src/app/page.tsx","ok":true} +{"ts":"2026-04-13T00:31:19.296Z","tool":"Bash","target":"sed -n '350,550p' /c/Users/maita/posimai-project/posimai-guard/src/app/page.tsx","ok":true} +{"ts":"2026-04-13T00:31:24.462Z","tool":"Bash","target":"sed -n '550,701p' /c/Users/maita/posimai-project/posimai-guard/src/app/page.tsx","ok":true} +{"ts":"2026-04-13T00:31:25.042Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/posimai-guard/src/components/FileTree.tsx | h","ok":true} +{"ts":"2026-04-13T00:31:28.904Z","tool":"Bash","target":"wc -l /c/Users/maita/posimai-project/posimai-guard/src/components/FileTree.tsx &","ok":true} +{"ts":"2026-04-13T00:31:30.106Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-guard/src/app/api/ && ls /c/Users/mait","ok":true} +{"ts":"2026-04-13T00:31:34.437Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/posimai-guard/src/lib/scanClient.ts | head -4","ok":true} +{"ts":"2026-04-13T00:31:35.335Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/posimai-guard/src/components/BinaryAurora.tsx","ok":true} +{"ts":"2026-04-13T00:44:20.403Z","tool":"Bash","target":"cat > /tmp/create-shortcut.ps1 << 'EOF'\n$WshShell = New-Object -comObject WScrip","ok":true} +{"ts":"2026-04-13T00:44:31.024Z","tool":"Bash","target":"powershell.exe -Command \"[Environment]::GetFolderPath('Desktop')\" 2>&1","ok":true} +{"ts":"2026-04-13T00:44:51.677Z","tool":"Bash","target":"cat > /tmp/mkshortcut.ps1 << 'PSEOF'\n$WshShell = New-Object -comObject WScript.S","ok":true} +{"ts":"2026-04-13T00:45:42.627Z","tool":"Write","target":"CodeViewer.tsx","ok":true} +{"ts":"2026-04-13T00:45:50.490Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T00:45:57.284Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T00:46:03.502Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T00:46:25.416Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -30","ok":true} +{"ts":"2026-04-13T00:46:33.630Z","tool":"Bash","target":"git add src/components/CodeViewer.tsx src/app/page.tsx && git commit -m \"$(cat <","ok":true} +{"ts":"2026-04-13T00:46:42.553Z","tool":"Bash","target":"npm run deploy 2>&1","ok":true} +{"ts":"2026-04-13T00:46:47.056Z","tool":"Bash","target":"where cl.exe 2>&1 | head -5","ok":true} +{"ts":"2026-04-13T00:46:52.695Z","tool":"Bash","target":"powershell.exe -Command \"Get-ChildItem 'C:\\Program Files (x86)\\Microsoft Visual ","ok":true} +{"ts":"2026-04-13T00:56:58.724Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard-app && cat > /tmp/tauri_build.ba","ok":true} +{"ts":"2026-04-13T00:57:23.787Z","tool":"Bash","target":"grep -n \"shell\\|open\\|FolderOpen\\|ExternalLink\" /c/Users/maita/posimai-project/p","ok":true} +{"ts":"2026-04-13T00:57:29.373Z","tool":"Bash","target":"grep -n \"shell\\|ShellOpen\\|openPath\" /c/Users/maita/posimai-project/posimai-guar","ok":true} +{"ts":"2026-04-13T00:57:30.605Z","tool":"Bash","target":"grep -n \"shell\\|opener\" /c/Users/maita/posimai-project/posimai-guard-app/src-tau","ok":true} +{"ts":"2026-04-13T00:57:36.181Z","tool":"Bash","target":"grep -n \"plugin::shell\\|shell\" /c/Users/maita/posimai-project/posimai-guard-app/","ok":true} +{"ts":"2026-04-13T00:57:46.430Z","tool":"Edit","target":"tauri.ts","ok":true} +{"ts":"2026-04-13T00:58:23.459Z","tool":"Edit","target":"CodeViewer.tsx","ok":true} +{"ts":"2026-04-13T00:58:47.328Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T00:58:57.339Z","tool":"Bash","target":"npm run build 2>&1 | tail -20","ok":true} +{"ts":"2026-04-13T00:59:08.274Z","tool":"Bash","target":"npm install @tauri-apps/plugin-shell 2>&1 | tail -5","ok":true} +{"ts":"2026-04-13T00:59:27.508Z","tool":"Bash","target":"npm run build 2>&1 | tail -20","ok":true} +{"ts":"2026-04-13T00:59:36.492Z","tool":"Bash","target":"git add src/components/CodeViewer.tsx src/app/page.tsx src/lib/tauri.ts package.","ok":true} +{"ts":"2026-04-13T00:59:44.983Z","tool":"Bash","target":"npm run deploy 2>&1","ok":true} +{"ts":"2026-04-13T00:59:51.100Z","tool":"Bash","target":"cat /c/Users/maita/AppData/Local/Temp/claude/c--Users-maita-posimai-project/8cbe","ok":true} +{"ts":"2026-04-13T00:59:55.342Z","tool":"Bash","target":"ls /c/Users/maita/AppData/Local/Temp/claude/c--Users-maita-posimai-project/8cbe3","ok":true} +{"ts":"2026-04-13T00:59:58.846Z","tool":"Bash","target":"cat /c/Users/maita/AppData/Local/Temp/claude/c--Users-maita-posimai-project/8cbe","ok":true} +{"ts":"2026-04-13T01:00:02.115Z","tool":"Bash","target":"wc -c /c/Users/maita/AppData/Local/Temp/claude/c--Users-maita-posimai-project/8c","ok":true} +{"ts":"2026-04-13T01:00:18.620Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-guard-app/src-tauri/target/ 2>/dev/nul","ok":true} +{"ts":"2026-04-13T01:00:35.638Z","tool":"Bash","target":"cat > /c/Users/maita/AppData/Local/Temp/tauri_release.bat << 'EOF'\n@echo off\ncal","ok":true} +{"ts":"2026-04-13T01:00:41.131Z","tool":"Bash","target":"cmd.exe /c \"C:\\Users\\maita\\AppData\\Local\\Temp\\tauri_release.bat\"","ok":true} +{"ts":"2026-04-13T01:00:58.121Z","tool":"Bash","target":"cat /c/Users/maita/AppData/Local/Temp/tauri_build_log.txt | tail -30","ok":true} +{"ts":"2026-04-13T01:00:59.410Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/posimai-guard-app/src-tauri/target/release/b","ok":true} +{"ts":"2026-04-13T01:01:12.413Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-guard-app/src-tauri/target/ 2>/dev/nul","ok":true} +{"ts":"2026-04-13T01:01:15.769Z","tool":"Bash","target":"cat /c/Users/maita/AppData/Local/Temp/claude/c--Users-maita-posimai-project/8cbe","ok":true} +{"ts":"2026-04-13T01:01:52.042Z","tool":"Bash","target":"powershell.exe -Command \"Test-Path 'C:\\Users\\maita\\AppData\\Local\\Temp\\tauri_rele","ok":true} +{"ts":"2026-04-13T01:02:10.718Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-guard-app/node_modules/@tauri-apps/cli","ok":true} +{"ts":"2026-04-13T01:02:30.178Z","tool":"Bash","target":"printf '@echo off\\r\\ncall \"C:\\\\Program Files (x86)\\\\Microsoft Visual Studio\\\\202","ok":true} +{"ts":"2026-04-13T01:02:32.826Z","tool":"Bash","target":"cmd.exe /c \"C:\\Users\\maita\\AppData\\Local\\Temp\\tauri_release2.bat\" 2>&1 | tail -5","ok":true} +{"ts":"2026-04-13T01:02:44.858Z","tool":"Bash","target":"cmd.exe /c '\"C:\\Program Files (x86)\\Microsoft Visual Studio\\2022\\BuildTools\\VC\\A","ok":true} +{"ts":"2026-04-13T01:02:52.496Z","tool":"Bash","target":"cat /c/Users/maita/AppData/Local/Temp/claude/c--Users-maita-posimai-project/8cbe","ok":true} +{"ts":"2026-04-13T01:02:55.725Z","tool":"Bash","target":"find /c/Users/maita/AppData/Local/Temp/claude -name \"bgca9uwoh.output\" 2>/dev/nu","ok":true} +{"ts":"2026-04-13T01:03:04.805Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-guard-app/src-tauri/target/ 2>/dev/nul","ok":true} +{"ts":"2026-04-13T01:03:24.096Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard-app && cmd.exe /c '\"C:\\Program F","ok":true} +{"ts":"2026-04-13T01:03:38.274Z","tool":"Edit","target":"STATUS.md","ok":true} +{"ts":"2026-04-13T01:03:42.322Z","tool":"Bash","target":"find /c/Users/maita/AppData/Local/Temp/claude -name \"bm8r4oe92.output\" 2>/dev/nu","ok":true} +{"ts":"2026-04-13T01:03:43.451Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-guard-app/src-tauri/target/ 2>/dev/nul","ok":true} +{"ts":"2026-04-13T01:03:54.358Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard-app && cmd.exe /c '\"C:\\Program F","ok":true} +{"ts":"2026-04-13T01:03:56.427Z","tool":"Bash","target":"cat /tmp/tauri_out.txt | tail -50","ok":true} +{"ts":"2026-04-13T01:04:19.643Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard-app/src-tauri && cmd.exe /c '\"C:","ok":true} +{"ts":"2026-04-13T01:04:24.922Z","tool":"Bash","target":"find /c/Users/maita/AppData/Local/Temp/claude -name \"bgw90jgoi.output\" 2>/dev/nu","ok":true} +{"ts":"2026-04-13T01:04:25.891Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/posimai-guard-app/src-tauri/target/release -","ok":true} +{"ts":"2026-04-13T01:04:36.426Z","tool":"Bash","target":"ls -la /c/Users/maita/posimai-project/posimai-guard-app/src-tauri/target/ 2>/dev","ok":true} +{"ts":"2026-04-13T01:04:50.399Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-guard-app/src-tauri/ 2>/dev/null && ca","ok":true} +{"ts":"2026-04-13T01:05:00.133Z","tool":"Bash","target":"export PATH=\"$PATH:/c/Program Files (x86)/Microsoft Visual Studio/2022/BuildTool","ok":true} +{"ts":"2026-04-13T01:05:07.048Z","tool":"Bash","target":"export PATH=\"$PATH:/c/Program Files (x86)/Microsoft Visual Studio/2022/BuildTool","ok":true} +{"ts":"2026-04-13T01:05:09.867Z","tool":"Bash","target":"find /c/Users/maita/AppData/Local/Temp/claude -name \"bmnrxmoeg.output\" 2>/dev/nu","ok":true} +{"ts":"2026-04-13T01:05:12.493Z","tool":"Bash","target":"find /c/Users/maita/AppData/Local/Temp/claude -name \"bmnrxmoeg.output\" 2>/dev/nu","ok":true} +{"ts":"2026-04-13T01:05:15.901Z","tool":"Bash","target":"find /c/Users/maita/AppData/Local/Temp/claude -name \"bmnrxmoeg.output\" 2>/dev/nu","ok":true} +{"ts":"2026-04-13T01:05:17.070Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/posimai-guard-app/src-tauri/target/release -","ok":true} +{"ts":"2026-04-13T01:05:25.909Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-guard-app/src-tauri/target/ 2>/dev/nul","ok":true} +{"ts":"2026-04-13T01:05:33.463Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/posimai-guard-app/src-tauri/target/release -","ok":true} +{"ts":"2026-04-13T01:05:44.073Z","tool":"Bash","target":"export PATH=\"$PATH:/c/Program Files (x86)/Microsoft Visual Studio/2022/BuildTool","ok":true} +{"ts":"2026-04-13T01:05:53.122Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && git log --oneline -5","ok":true} +{"ts":"2026-04-13T01:09:10.112Z","tool":"Bash","target":"find /c/Users/maita/AppData/Local/Temp/claude -name \"benmrf0gx.output\" 2>/dev/nu","ok":true} +{"ts":"2026-04-13T01:09:11.807Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/posimai-guard-app/src-tauri/target/release -","ok":true} +{"ts":"2026-04-13T01:09:19.993Z","tool":"Bash","target":"grep -n \"Manager\\|\\.app_handle\\|\\.manage\\|\\.state\" /c/Users/maita/posimai-projec","ok":true} +{"ts":"2026-04-13T01:09:24.292Z","tool":"Edit","target":"lib.rs","ok":true} +{"ts":"2026-04-13T01:09:33.146Z","tool":"Bash","target":"powershell.exe -ExecutionPolicy Bypass -Command \"\n\\$WshShell = New-Object -comOb","ok":true} +{"ts":"2026-04-13T01:09:41.588Z","tool":"Bash","target":"export PATH=\"$PATH:/c/Program Files (x86)/Microsoft Visual Studio/2022/BuildTool","ok":true} +{"ts":"2026-04-13T01:09:48.165Z","tool":"Bash","target":"git add posimai-guard-app/src-tauri/src/lib.rs && git commit -m \"$(cat <<'EOF'\nf","ok":true} +{"ts":"2026-04-13T01:09:52.035Z","tool":"Bash","target":"find /c/Users/maita/AppData/Local/Temp/claude -name \"br84ziueg.output\" 2>/dev/nu","ok":true} +{"ts":"2026-04-13T01:09:55.460Z","tool":"Bash","target":"find /c/Users/maita/AppData/Local/Temp/claude -name \"br84ziueg.output\" 2>/dev/nu","ok":true} +{"ts":"2026-04-13T01:10:01.270Z","tool":"Bash","target":"git add STATUS.md && git commit -m \"$(cat <<'EOF'\nchore: update STATUS.md — Guar","ok":true} +{"ts":"2026-04-13T01:12:51.970Z","tool":"Bash","target":"find /c/Users/maita/AppData/Local/Temp/claude -name \"br84ziueg.output\" 2>/dev/nu","ok":true} +{"ts":"2026-04-13T01:12:53.026Z","tool":"Bash","target":"find /c/Users/maita/posimai-project/posimai-guard-app/src-tauri/target/release/b","ok":true} +{"ts":"2026-04-13T01:12:57.335Z","tool":"Bash","target":"ls -lh \"/c/Users/maita/posimai-project/posimai-guard-app/src-tauri/target/releas","ok":true} +{"ts":"2026-04-13T01:13:04.937Z","tool":"Bash","target":"powershell.exe -ExecutionPolicy Bypass -Command \"\n\\$WshShell = New-Object -comOb","ok":true} +{"ts":"2026-04-13T01:13:18.196Z","tool":"Edit","target":"STATUS.md","ok":true} +{"ts":"2026-04-13T01:13:23.718Z","tool":"Bash","target":"git add STATUS.md && git commit -m \"$(cat <<'EOF'\nchore: update STATUS.md — Guar","ok":true} +{"ts":"2026-04-13T01:28:54.848Z","tool":"Edit","target":"tauri.ts","ok":true} +{"ts":"2026-04-13T01:29:27.636Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -10","ok":true} +{"ts":"2026-04-13T01:29:43.323Z","tool":"Bash","target":"git add src/lib/tauri.ts && git commit -m \"$(cat <<'EOF'\nfix(tauri): prepend fol","ok":true} +{"ts":"2026-04-13T01:32:43.319Z","tool":"Bash","target":"grep -n \"temperature\\|generationConfig\\|Temperature\" /c/Users/maita/posimai-proj","ok":true} +{"ts":"2026-04-13T01:32:43.742Z","tool":"Bash","target":"grep -n \"generationConfig\\|responseSchema\\|responseMimeType\" /c/Users/maita/posi","ok":true} +{"ts":"2026-04-13T01:32:53.603Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/posimai-guard/src/app/api/scan/route.ts | hea","ok":true} +{"ts":"2026-04-13T01:32:54.412Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/posimai-guard/src/app/api/scan-claude/route.t","ok":true} +{"ts":"2026-04-13T01:32:57.718Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/posimai-guard/src/app/api/scan-claude/route.t","ok":true} +{"ts":"2026-04-13T01:32:58.208Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/posimai-guard/src/lib/scanPrompt.ts","ok":true} +{"ts":"2026-04-13T01:33:55.564Z","tool":"Edit","target":"route.ts","ok":true} +{"ts":"2026-04-13T01:34:01.246Z","tool":"Edit","target":"route.ts","ok":true} +{"ts":"2026-04-13T01:34:10.048Z","tool":"Edit","target":"scanClient.ts","ok":true} +{"ts":"2026-04-13T01:34:25.510Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T01:34:39.282Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T01:34:49.495Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T01:37:22.355Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npm run build 2>&1","ok":true} +{"ts":"2026-04-13T01:37:28.891Z","tool":"Bash","target":"npm run deploy 2>&1","ok":true} +{"ts":"2026-04-13T01:37:31.814Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project && git status --short","ok":true} +{"ts":"2026-04-13T01:37:35.632Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && git status --short && git log","ok":true} +{"ts":"2026-04-13T01:37:41.652Z","tool":"Bash","target":"git add src/app/api/scan-claude/route.ts src/app/api/scan/route.ts src/app/page.","ok":true} +{"ts":"2026-04-13T01:37:50.426Z","tool":"Bash","target":"npm run deploy 2>&1","ok":true} +{"ts":"2026-04-13T02:16:08.396Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-guard/src/components/","ok":true} +{"ts":"2026-04-13T02:16:12.662Z","tool":"Bash","target":"grep -n \"FF453A\\|F97316\\|rgba(255\\|hardcoded\\|#FF\\|#F9\" /c/Users/maita/posimai-p","ok":true} +{"ts":"2026-04-13T02:16:20.606Z","tool":"Bash","target":"grep -n \"#[A-F0-9]\\{6\\}\\|rgba(\" /c/Users/maita/posimai-project/posimai-guard/src","ok":true} +{"ts":"2026-04-13T02:16:56.863Z","tool":"Edit","target":"globals.css","ok":true} +{"ts":"2026-04-13T02:17:03.224Z","tool":"Edit","target":"globals.css","ok":true} +{"ts":"2026-04-13T02:17:14.107Z","tool":"Edit","target":"globals.css","ok":true} +{"ts":"2026-04-13T02:17:23.318Z","tool":"Edit","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-13T02:17:34.420Z","tool":"Edit","target":"CodeViewer.tsx","ok":true} +{"ts":"2026-04-13T02:17:39.977Z","tool":"Edit","target":"DESIGN.md","ok":true} +{"ts":"2026-04-13T02:17:46.102Z","tool":"Edit","target":"DESIGN.md","ok":true} +{"ts":"2026-04-13T02:18:10.966Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npm run build 2>&1","ok":true} +{"ts":"2026-04-13T02:18:23.514Z","tool":"Bash","target":"git add -A && git commit -m \"$(cat <<'EOF'\nfeat(guard): cyberpunk color redesign","ok":true} +{"ts":"2026-04-13T02:35:55.433Z","tool":"Bash","target":"grep -n \"tab\\|Tab\\|deps\\|iac\\|infra\" /c/Users/maita/posimai-project/posimai-guar","ok":true} +{"ts":"2026-04-13T02:36:29.289Z","tool":"Edit","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-13T02:36:35.373Z","tool":"Edit","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-13T02:36:42.884Z","tool":"Edit","target":"CodeViewer.tsx","ok":true} +{"ts":"2026-04-13T02:37:10.221Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -20","ok":true} +{"ts":"2026-04-13T02:37:22.782Z","tool":"Bash","target":"git add -A && git commit -m \"$(cat <<'EOF'\nrefactor(guard): ATTACKER POV → amber","ok":true} +{"ts":"2026-04-13T03:05:42.263Z","tool":"Write","target":"ruleEngine.ts","ok":true} +{"ts":"2026-04-13T05:21:32.168Z","tool":"Edit","target":"ruleEngine.ts","ok":true} +{"ts":"2026-04-13T05:21:39.041Z","tool":"Edit","target":"ruleEngine.ts","ok":true} +{"ts":"2026-04-13T05:21:48.456Z","tool":"Edit","target":"ruleEngine.ts","ok":true} +{"ts":"2026-04-13T05:21:57.149Z","tool":"Edit","target":"ruleEngine.ts","ok":true} +{"ts":"2026-04-13T05:22:18.396Z","tool":"Edit","target":"scanPrompt.ts","ok":true} +{"ts":"2026-04-13T05:22:34.252Z","tool":"Edit","target":"scanPrompt.ts","ok":true} +{"ts":"2026-04-13T05:22:50.974Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T05:25:23.454Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T05:25:27.136Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T05:26:04.700Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T05:26:14.557Z","tool":"Edit","target":"ScanHeader.tsx","ok":true} +{"ts":"2026-04-13T05:26:18.662Z","tool":"Edit","target":"ScanHeader.tsx","ok":true} +{"ts":"2026-04-13T05:26:24.754Z","tool":"Edit","target":"ScanHeader.tsx","ok":true} +{"ts":"2026-04-13T05:26:38.685Z","tool":"Edit","target":"ScanHeader.tsx","ok":true} +{"ts":"2026-04-13T05:26:46.099Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T05:27:11.168Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -50","ok":true} +{"ts":"2026-04-13T05:27:19.818Z","tool":"Edit","target":"ruleEngine.ts","ok":true} +{"ts":"2026-04-13T05:27:36.585Z","tool":"Bash","target":"npm run build 2>&1 | tail -30","ok":true} +{"ts":"2026-04-13T05:27:54.884Z","tool":"Edit","target":"scanClient.ts","ok":true} +{"ts":"2026-04-13T05:28:21.630Z","tool":"Bash","target":"npm run build 2>&1 | tail -30","ok":true} +{"ts":"2026-04-13T05:28:31.593Z","tool":"Bash","target":"git add src/app/page.tsx src/lib/ruleEngine.ts src/lib/scanPrompt.ts src/lib/sca","ok":true} +{"ts":"2026-04-13T05:28:42.561Z","tool":"Bash","target":"git commit -m \"$(cat <<'EOF'\nfeat(guard): rule engine as primary scan + AI enric","ok":true} +{"ts":"2026-04-13T05:28:45.657Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-guard/ && cat /c/Users/maita/posimai-p","ok":true} +{"ts":"2026-04-13T05:29:04.088Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-guard/src/lib/","ok":true} +{"ts":"2026-04-13T05:29:06.536Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-guard/src/lib/scanSchema.ts | head -5;","ok":true} +{"ts":"2026-04-13T05:29:35.607Z","tool":"Write","target":"guard.ts","ok":true} +{"ts":"2026-04-13T05:29:47.749Z","tool":"Bash","target":"which tsx 2>/dev/null || npx tsx --version 2>/dev/null | head -1","ok":true} +{"ts":"2026-04-13T05:29:57.837Z","tool":"Edit","target":"package.json","ok":true} +{"ts":"2026-04-13T05:30:07.022Z","tool":"Bash","target":"npx tsx cli/guard.ts src/ 2>&1 | head -60","ok":true} +{"ts":"2026-04-13T05:30:17.589Z","tool":"Bash","target":"npx tsx cli/guard.ts cli/ 2>&1","ok":true} +{"ts":"2026-04-13T05:30:33.396Z","tool":"Bash","target":"git add cli/guard.ts package.json && git commit -m \"$(cat <<'EOF'\nfeat(guard): a","ok":true} +{"ts":"2026-04-13T05:43:02.905Z","tool":"Edit","target":"globals.css","ok":true} +{"ts":"2026-04-13T05:43:49.427Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && git push github main","ok":true} +{"ts":"2026-04-13T05:43:52.112Z","tool":"Bash","target":"cat /c/Users/maita/AppData/Local/Temp/claude/c--Users-maita-posimai-project/8cbe","ok":true} +{"ts":"2026-04-13T05:47:02.408Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-guard-app/src-tauri/ && cat /c/Users/m","ok":true} +{"ts":"2026-04-13T05:47:05.357Z","tool":"Bash","target":"mkdir -p /c/Users/maita/posimai-project/posimai-guard/src/app/api/enrich","ok":true} +{"ts":"2026-04-13T05:47:25.093Z","tool":"Write","target":"route.ts","ok":true} +{"ts":"2026-04-13T05:47:39.515Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T05:47:43.992Z","tool":"Bash","target":"mkdir -p /c/Users/maita/posimai-project/posimai-guard-app/.github/workflows && l","ok":true} +{"ts":"2026-04-13T05:47:47.699Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/posimai-guard-app/package.json","ok":true} +{"ts":"2026-04-13T05:47:56.882Z","tool":"Write","target":"build-linux.yml","ok":true} +{"ts":"2026-04-13T05:48:24.968Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -25","ok":true} +{"ts":"2026-04-13T05:48:28.849Z","tool":"Edit","target":"route.ts","ok":true} +{"ts":"2026-04-13T05:48:36.166Z","tool":"Edit","target":"route.ts","ok":true} +{"ts":"2026-04-13T05:49:09.496Z","tool":"Bash","target":"npm run build 2>&1 | tail -20","ok":true} +{"ts":"2026-04-13T05:49:22.448Z","tool":"Bash","target":"git add src/app/api/enrich/route.ts src/app/page.tsx && git commit -m \"$(cat <<'","ok":true} +{"ts":"2026-04-13T05:49:30.342Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard-app && git add .github/workflows","ok":true} +{"ts":"2026-04-13T06:47:50.440Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T06:47:55.074Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T06:47:59.631Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T06:48:06.158Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T06:48:12.656Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T06:48:48.640Z","tool":"Write","target":"SettingsPanel.tsx","ok":true} +{"ts":"2026-04-13T06:49:41.574Z","tool":"Write","target":"route.ts","ok":true} +{"ts":"2026-04-13T06:50:14.534Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T06:50:40.822Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -30","ok":true} +{"ts":"2026-04-13T06:50:43.784Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T06:51:05.810Z","tool":"Bash","target":"npm run build 2>&1 | tail -25","ok":true} +{"ts":"2026-04-13T06:51:21.185Z","tool":"Bash","target":"git add src/app/page.tsx src/app/api/scan-claude/route.ts src/components/Setting","ok":true} +{"ts":"2026-04-13T07:18:27.803Z","tool":"Edit","target":"ScanHeader.tsx","ok":true} +{"ts":"2026-04-13T07:18:33.140Z","tool":"Edit","target":"ScanHeader.tsx","ok":true} +{"ts":"2026-04-13T07:18:38.126Z","tool":"Edit","target":"ScanHeader.tsx","ok":true} +{"ts":"2026-04-13T07:19:13.068Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -10","ok":true} +{"ts":"2026-04-13T07:19:25.798Z","tool":"Bash","target":"git add src/components/ScanHeader.tsx && git commit -m \"fix(guard): score gauge ","ok":true} +{"ts":"2026-04-13T07:32:08.236Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/ && echo \"---\" && ls /c/Users/maita/posimai-pr","ok":true} +{"ts":"2026-04-13T07:32:08.478Z","tool":"Bash","target":"git remote -v && echo \"---\" && cat posimai-guard-app/package.json | grep -A3 '\"s","ok":true} +{"ts":"2026-04-13T07:32:22.325Z","tool":"Bash","target":"mkdir -p /c/Users/maita/posimai-project/.github/workflows","ok":true} +{"ts":"2026-04-13T07:32:32.277Z","tool":"Write","target":"build-guard-linux.yml","ok":true} +{"ts":"2026-04-13T07:32:36.787Z","tool":"Bash","target":"rm /c/Users/maita/posimai-project/posimai-guard-app/.github/workflows/build-linu","ok":true} +{"ts":"2026-04-13T07:32:39.651Z","tool":"Bash","target":"git add .github/workflows/build-guard-linux.yml posimai-guard-app/.github && git","ok":true} +{"ts":"2026-04-13T07:32:49.628Z","tool":"Bash","target":"git commit -m \"$(cat <<'EOF'\nci: move Linux build workflow to repo root .github/","ok":true} +{"ts":"2026-04-13T07:33:09.541Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npx tsx cli/guard.ts src/ --m","ok":true} +{"ts":"2026-04-13T07:33:57.428Z","tool":"Edit","target":"ruleEngine.ts","ok":true} +{"ts":"2026-04-13T07:34:09.004Z","tool":"Edit","target":"ruleEngine.ts","ok":true} +{"ts":"2026-04-13T07:34:16.384Z","tool":"Edit","target":"scanPrompt.ts","ok":true} +{"ts":"2026-04-13T07:34:28.651Z","tool":"Bash","target":"npx tsx cli/guard.ts src/ --min-severity=warning 2>&1","ok":true} +{"ts":"2026-04-13T07:35:26.136Z","tool":"Edit","target":"ruleEngine.ts","ok":true} +{"ts":"2026-04-13T07:35:33.818Z","tool":"Edit","target":"DepResults.tsx","ok":true} +{"ts":"2026-04-13T07:35:44.188Z","tool":"Bash","target":"npx tsx cli/guard.ts src/ 2>&1","ok":true} +{"ts":"2026-04-13T07:36:06.518Z","tool":"Edit","target":"ruleEngine.ts","ok":true} +{"ts":"2026-04-13T07:36:13.348Z","tool":"Edit","target":"DepResults.tsx","ok":true} +{"ts":"2026-04-13T07:36:24.251Z","tool":"Bash","target":"npx tsx cli/guard.ts src/ 2>&1","ok":true} +{"ts":"2026-04-13T07:36:54.765Z","tool":"Bash","target":"npm run build 2>&1 | tail -15","ok":true} +{"ts":"2026-04-13T07:37:12.652Z","tool":"Bash","target":"git add src/lib/ruleEngine.ts src/lib/scanPrompt.ts src/components/DepResults.ts","ok":true} +{"ts":"2026-04-13T07:37:25.304Z","tool":"Bash","target":"gh workflow run build-guard-linux.yml --repo posimai/posimai-root 2>&1","ok":true} +{"ts":"2026-04-13T07:37:29.002Z","tool":"Bash","target":"gh run list --repo posimai/posimai-root --limit 5 2>&1","ok":true} +{"ts":"2026-04-13T08:20:05.145Z","tool":"Write","target":"SettingsPanel.tsx","ok":true} +{"ts":"2026-04-13T08:20:34.829Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -15","ok":true} +{"ts":"2026-04-13T08:20:48.683Z","tool":"Bash","target":"git add src/components/SettingsPanel.tsx && git commit -m \"$(cat <<'EOF'\nfix(gua","ok":true} +{"ts":"2026-04-13T08:25:49.024Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && cat .env.local 2>/dev/null | ","ok":true} +{"ts":"2026-04-13T08:25:53.498Z","tool":"Bash","target":"node -e \"const p=require('./package.json'); console.log(Object.keys(p.dependenci","ok":true} +{"ts":"2026-04-13T08:25:53.630Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-guard/src/app/api/","ok":true} +{"ts":"2026-04-13T08:29:42.040Z","tool":"Write","target":"guardIgnore.ts","ok":true} +{"ts":"2026-04-13T08:29:47.592Z","tool":"Edit","target":"guard.ts","ok":true} +{"ts":"2026-04-13T08:29:53.264Z","tool":"Edit","target":"guard.ts","ok":true} +{"ts":"2026-04-13T08:29:59.935Z","tool":"Edit","target":"guard.ts","ok":true} +{"ts":"2026-04-13T08:30:04.867Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T08:30:11.194Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T08:30:30.478Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T08:30:36.754Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T08:30:41.761Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T08:30:52.421Z","tool":"Bash","target":"find c:/Users/maita/posimai-project/posimai-guard/src/app/api -name \"route.ts\" 2","ok":true} +{"ts":"2026-04-13T08:31:06.752Z","tool":"Bash","target":"grep -r \"guard.posimai\\|vercel.app\\|NEXT_PUBLIC_URL\\|ALLOWED_ORIGIN\" c:/Users/ma","ok":true} +{"ts":"2026-04-13T08:31:08.725Z","tool":"Bash","target":"cat c:/Users/maita/posimai-project/posimai-guard/vercel.json 2>/dev/null || echo","ok":true} +{"ts":"2026-04-13T08:31:11.337Z","tool":"Bash","target":"cat c:/Users/maita/posimai-project/posimai-guard/.env.local 2>/dev/null || cat c","ok":true} +{"ts":"2026-04-13T08:31:16.128Z","tool":"Bash","target":"grep -i \"guard\" c:/Users/maita/posimai-project/posimai-dashboard/src/data/projec","ok":true} +{"ts":"2026-04-13T08:31:18.641Z","tool":"Bash","target":"grep -A5 '\"posimai-guard\"' c:/Users/maita/posimai-project/posimai-dashboard/src/","ok":true} +{"ts":"2026-04-13T08:31:21.224Z","tool":"Bash","target":"grep -A15 '\"posimai-guard\"' c:/Users/maita/posimai-project/posimai-dashboard/src","ok":true} +{"ts":"2026-04-13T08:31:23.811Z","tool":"Bash","target":"grep -A20 '\"posimai-guard\"' c:/Users/maita/posimai-project/posimai-dashboard/src","ok":true} +{"ts":"2026-04-13T08:31:31.853Z","tool":"Write","target":"apiGuard.ts","ok":true} +{"ts":"2026-04-13T10:17:08.284Z","tool":"Bash","target":"grep -n \"checkOrigin\\|apiGuard\" c:/Users/maita/posimai-project/posimai-guard/src","ok":true} +{"ts":"2026-04-13T10:17:15.327Z","tool":"Edit","target":"route.ts","ok":true} +{"ts":"2026-04-13T10:17:16.445Z","tool":"Edit","target":"route.ts","ok":true} +{"ts":"2026-04-13T10:17:26.700Z","tool":"Edit","target":"route.ts","ok":true} +{"ts":"2026-04-13T10:17:28.031Z","tool":"Edit","target":"route.ts","ok":true} +{"ts":"2026-04-13T10:18:06.003Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && npm run build 2>&1","ok":true} +{"ts":"2026-04-13T10:18:14.553Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && npm run deploy 2>&1","ok":true} +{"ts":"2026-04-13T10:18:18.467Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git add src/lib/guardIgnore.t","ok":true} +{"ts":"2026-04-13T10:18:21.475Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git status --short","ok":true} +{"ts":"2026-04-13T10:18:25.427Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git status --short --untracke","ok":true} +{"ts":"2026-04-13T10:18:28.036Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git log --oneline -3 && echo ","ok":true} +{"ts":"2026-04-13T10:18:32.890Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git commit -m \"$(cat <<'EOF'\n","ok":true} +{"ts":"2026-04-13T10:18:43.624Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && npm run deploy 2>&1","ok":true} +{"ts":"2026-04-13T10:21:48.505Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && grep -rn \"downloadMarkdown\\|h","ok":true} +{"ts":"2026-04-13T10:21:49.143Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git log --oneline -8","ok":true} +{"ts":"2026-04-13T10:21:52.370Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && grep -rn \"apply-fixes\\|applyF","ok":true} +{"ts":"2026-04-13T10:22:28.744Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && cat src/lib/scanSchema.ts 2>/","ok":true} +{"ts":"2026-04-13T10:22:29.572Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && wc -l src/app/api/apply-fixes","ok":true} +{"ts":"2026-04-13T10:22:53.757Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && grep -rn \"ScannableFile\\|from","ok":true} +{"ts":"2026-04-13T10:22:54.603Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && grep -rn \"ScannableFile\" src/","ok":true} +{"ts":"2026-04-13T10:23:09.976Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && grep -rn \"api/scan\\b\\|scan-cl","ok":true} +{"ts":"2026-04-13T10:23:10.456Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && grep -n \"applyGuardIgnore\" sr","ok":true} +{"ts":"2026-04-13T10:23:56.383Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T10:24:03.229Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T10:24:07.262Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T10:24:12.636Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T10:24:20.276Z","tool":"Edit","target":"scanSchema.ts","ok":true} +{"ts":"2026-04-13T10:24:24.879Z","tool":"Bash","target":"rm c:/Users/maita/posimai-project/posimai-guard/src/lib/zipDownload.ts && rm c:/","ok":true} +{"ts":"2026-04-13T10:25:38.052Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && rm -rf .next && npm run build","ok":true} +{"ts":"2026-04-13T10:25:44.638Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git add -A && git commit -m \"","ok":true} +{"ts":"2026-04-13T10:25:54.858Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && npm run deploy 2>&1","ok":true} +{"ts":"2026-04-13T10:28:51.086Z","tool":"Bash","target":"grep -rn \"プロンプト\\|prompt.*copy\\|CopyPrompt\\|AIアイコン\\|copy.*prompt\\|コピー欄\" c:/Users/","ok":true} +{"ts":"2026-04-13T10:28:52.466Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-guard-ext/src/ 2>/dev/null && cat c:/U","ok":true} +{"ts":"2026-04-13T10:28:55.198Z","tool":"Bash","target":"grep -n \"プロンプト\\|コピー\\|copy\\|Copy\\|prompt\" c:/Users/maita/posimai-project/posimai-","ok":true} +{"ts":"2026-04-13T10:28:56.731Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard-ext && git log --oneline -5 2>/d","ok":true} +{"ts":"2026-04-13T10:29:05.405Z","tool":"Bash","target":"grep -n \"buildAiPrompt\" c:/Users/maita/posimai-project/posimai-guard/src/compone","ok":true} +{"ts":"2026-04-13T10:30:03.230Z","tool":"Edit","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-13T10:30:07.233Z","tool":"Bash","target":"ls c:/Users/maita/posimai-project/posimai-guard/src/app/api/ 2>/dev/null","ok":true} +{"ts":"2026-04-13T10:31:07.001Z","tool":"Bash","target":"mkdir -p c:/Users/maita/posimai-project/posimai-guard/src/app/api/fix-issue && e","ok":true} +{"ts":"2026-04-13T10:31:26.874Z","tool":"Write","target":"route.ts","ok":true} +{"ts":"2026-04-13T10:31:35.935Z","tool":"Edit","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-13T10:31:42.524Z","tool":"Edit","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-13T10:31:51.804Z","tool":"Edit","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-13T10:32:16.323Z","tool":"Edit","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-13T10:32:21.743Z","tool":"Edit","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-13T10:32:25.878Z","tool":"Bash","target":"grep -n \"IssueCard\" c:/Users/maita/posimai-project/posimai-guard/src/components/","ok":true} +{"ts":"2026-04-13T10:32:29.485Z","tool":"Edit","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-13T10:32:34.060Z","tool":"Bash","target":"grep -n \"ScanResults\" c:/Users/maita/posimai-project/posimai-guard/src/app/page.","ok":true} +{"ts":"2026-04-13T10:32:42.373Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T10:33:18.303Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && npm run build 2>&1","ok":true} +{"ts":"2026-04-13T10:33:24.756Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git add -A && git commit -m \"","ok":true} +{"ts":"2026-04-13T10:33:34.858Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && npm run deploy 2>&1","ok":true} +{"ts":"2026-04-13T10:39:40.944Z","tool":"Bash","target":"grep -c \"id:\" c:/Users/maita/posimai-project/posimai-guard/src/lib/ruleEngine.ts","ok":true} +{"ts":"2026-04-13T10:39:44.812Z","tool":"Bash","target":"grep \"id: '\" c:/Users/maita/posimai-project/posimai-guard/src/lib/ruleEngine.ts ","ok":true} +{"ts":"2026-04-13T10:40:18.165Z","tool":"Bash","target":"grep -n \"dangerouslySetInnerHTML\\|redirect.*query\\|open.redirect\\|setHeader.*Coo","ok":true} +{"ts":"2026-04-13T10:40:19.490Z","tool":"Bash","target":"grep -n \"XSS00\\|AIP0\\|INJ0\" c:/Users/maita/posimai-project/posimai-guard/src/lib","ok":true} +{"ts":"2026-04-13T10:41:43.660Z","tool":"Edit","target":"CodeViewer.tsx","ok":true} +{"ts":"2026-04-13T10:42:05.762Z","tool":"Edit","target":"CodeViewer.tsx","ok":true} +{"ts":"2026-04-13T10:42:14.302Z","tool":"Edit","target":"CodeViewer.tsx","ok":true} +{"ts":"2026-04-13T10:42:26.358Z","tool":"Bash","target":"grep -n \"aiEnriching\\|durationMs\\|fileCount\\|RULE_COUNT\\|rules\" c:/Users/maita/p","ok":true} +{"ts":"2026-04-13T10:42:33.334Z","tool":"Edit","target":"ScanHeader.tsx","ok":true} +{"ts":"2026-04-13T10:42:45.587Z","tool":"Bash","target":"grep -n \"AIP015\\|AIP014\\|// ═══\" c:/Users/maita/posimai-project/posimai-guard/sr","ok":true} +{"ts":"2026-04-13T10:43:09.244Z","tool":"Edit","target":"ruleEngine.ts","ok":true} +{"ts":"2026-04-13T10:43:14.256Z","tool":"Bash","target":"grep -c \"id: '\" c:/Users/maita/posimai-project/posimai-guard/src/lib/ruleEngine.","ok":true} +{"ts":"2026-04-13T10:43:18.177Z","tool":"Edit","target":"ScanHeader.tsx","ok":true} +{"ts":"2026-04-13T10:43:45.052Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && npm run build 2>&1","ok":true} +{"ts":"2026-04-13T10:43:53.505Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && git add -A && git commit -m \"","ok":true} +{"ts":"2026-04-13T10:44:03.560Z","tool":"Bash","target":"cd c:/Users/maita/posimai-project/posimai-guard && npm run deploy 2>&1","ok":true} +{"ts":"2026-04-13T11:04:21.334Z","tool":"Bash","target":"grep -n \"ファイルをスキャン\\|問題は見つかり\\|fileCount\\|okCount\" c:/Users/maita/posimai-project/","ok":true} +{"ts":"2026-04-13T11:04:24.356Z","tool":"Bash","target":"grep -n \"fileCount\\|state\\.files\\|scannableFiles\" c:/Users/maita/posimai-project","ok":true} +{"ts":"2026-04-13T11:10:34.968Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T11:10:39.086Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T11:10:43.858Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T11:10:48.397Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T11:10:53.762Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T11:11:47.329Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -30","ok":true} +{"ts":"2026-04-13T11:11:52.366Z","tool":"Bash","target":"git add -A && git commit -m \"$(cat <<'EOF'\nfix(guard): add explicit fileCount to","ok":true} +{"ts":"2026-04-13T11:12:16.291Z","tool":"Bash","target":"npm run deploy 2>&1 | tail -20","ok":true} +{"ts":"2026-04-13T11:31:59.531Z","tool":"Write","target":"projectStore.ts","ok":true} +{"ts":"2026-04-13T11:32:10.958Z","tool":"Edit","target":"DropZone.tsx","ok":true} +{"ts":"2026-04-13T11:32:29.567Z","tool":"Edit","target":"DropZone.tsx","ok":true} +{"ts":"2026-04-13T11:32:59.182Z","tool":"Edit","target":"DropZone.tsx","ok":true} +{"ts":"2026-04-13T11:33:07.985Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T11:33:16.769Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T11:33:20.970Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T11:33:27.392Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T11:34:08.952Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T11:34:14.756Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T11:34:20.196Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T11:35:41.109Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T11:37:44.727Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -40","ok":true} +{"ts":"2026-04-13T11:40:34.941Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npm run build 2>&1","ok":true} +{"ts":"2026-04-13T11:40:57.305Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && git add -A && git commit -m \"","ok":true} +{"ts":"2026-04-13T13:13:31.138Z","tool":"Edit","target":"tauri.ts","ok":true} +{"ts":"2026-04-13T13:13:40.267Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T13:13:45.717Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T13:13:55.696Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T13:14:02.631Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T13:14:08.932Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T13:14:13.560Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T13:14:21.058Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T13:14:27.884Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T13:14:35.446Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T13:14:51.030Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T13:15:06.589Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T13:15:20.690Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T13:15:47.740Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npm run build 2>&1","ok":true} +{"ts":"2026-04-13T13:16:03.645Z","tool":"Bash","target":"git add -A && git commit -m \"$(cat <<'EOF'\nfeat(guard): Cursor-like project pers","ok":true} +{"ts":"2026-04-13T13:20:41.105Z","tool":"Bash","target":"grep -n \"attackerPov\\|loadSettings\\|saveSettings\" /c/Users/maita/posimai-project","ok":true} +{"ts":"2026-04-13T13:22:00.575Z","tool":"Edit","target":"SettingsPanel.tsx","ok":true} +{"ts":"2026-04-13T15:10:51.423Z","tool":"Edit","target":"SettingsPanel.tsx","ok":true} +{"ts":"2026-04-13T15:10:58.067Z","tool":"Edit","target":"FileTree.tsx","ok":true} +{"ts":"2026-04-13T15:11:16.485Z","tool":"Edit","target":"FileTree.tsx","ok":true} +{"ts":"2026-04-13T15:11:23.471Z","tool":"Edit","target":"FileTree.tsx","ok":true} +{"ts":"2026-04-13T15:11:29.332Z","tool":"Edit","target":"FileTree.tsx","ok":true} +{"ts":"2026-04-13T15:11:33.683Z","tool":"Edit","target":"FileTree.tsx","ok":true} +{"ts":"2026-04-13T15:11:46.330Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T15:11:52.951Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T15:12:03.088Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-13T15:12:24.622Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -30","ok":true} +{"ts":"2026-04-13T15:12:38.195Z","tool":"Bash","target":"git add -A && git commit -m \"$(cat <<'EOF'\nfix(guard): three UX fixes\n\n- ATTACKE","ok":true} +{"ts":"2026-04-13T23:14:01.415Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && grep -r \"tauriWriteFile\\|appl","ok":true} +{"ts":"2026-04-13T23:14:21.068Z","tool":"Bash","target":"grep -n \"tauriWriteFile\\|InlineFix\\|FixState\\|setFix\\|original\\|fixed\" src/compo","ok":true} +{"ts":"2026-04-14T05:57:42.494Z","tool":"Bash","target":"grep -n \"^ {\" /c/Users/maita/posimai-project/posimai-guard/src/lib/ruleEngine.t","ok":true} +{"ts":"2026-04-14T05:57:45.733Z","tool":"Bash","target":"grep -n \"innerHTML\\|eval\\|dangerouslySet\\|console\\.log.*pass\\|console\\.log.*toke","ok":true} +{"ts":"2026-04-14T05:57:49.294Z","tool":"Bash","target":"grep -n \"console.log\\|logger\\|logging\" /c/Users/maita/posimai-project/posimai-gu","ok":true} +{"ts":"2026-04-14T05:58:11.579Z","tool":"Bash","target":"grep -n \"NEXT_PUBLIC\\|process\\.env\\|localStorage.*password\\|localStorage.*token\\","ok":true} +{"ts":"2026-04-14T05:58:15.383Z","tool":"Bash","target":"grep -n \"console\\.log\\|logger\\.\\|LOG\" /c/Users/maita/posimai-project/posimai-gua","ok":true} +{"ts":"2026-04-14T05:59:02.786Z","tool":"Edit","target":"ruleEngine.ts","ok":true} +{"ts":"2026-04-14T05:59:12.052Z","tool":"Edit","target":"tauri.ts","ok":true} +{"ts":"2026-04-14T05:59:17.289Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-14T05:59:25.413Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-14T05:59:33.023Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-14T05:59:45.058Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-14T06:00:00.508Z","tool":"Edit","target":"CodeViewer.tsx","ok":true} +{"ts":"2026-04-14T06:00:05.306Z","tool":"Edit","target":"CodeViewer.tsx","ok":true} +{"ts":"2026-04-14T06:00:52.527Z","tool":"Edit","target":"CodeViewer.tsx","ok":true} +{"ts":"2026-04-14T06:01:07.929Z","tool":"Edit","target":"CodeViewer.tsx","ok":true} +{"ts":"2026-04-14T06:01:11.744Z","tool":"Edit","target":"CodeViewer.tsx","ok":true} +{"ts":"2026-04-14T06:01:17.960Z","tool":"Bash","target":"grep -n \"ルール適用\" /c/Users/maita/posimai-project/posimai-guard/src/components/Scan","ok":true} +{"ts":"2026-04-14T06:01:25.047Z","tool":"Edit","target":"ScanHeader.tsx","ok":true} +{"ts":"2026-04-14T06:01:48.998Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -25","ok":true} +{"ts":"2026-04-14T06:02:10.015Z","tool":"Bash","target":"git add -A && git commit -m \"$(cat <<'EOF'\nfeat(guard): Tauri file write-back + ","ok":true} +{"ts":"2026-04-14T06:58:07.949Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-14T06:58:16.009Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-14T06:58:21.214Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-14T06:58:38.784Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-14T06:58:56.828Z","tool":"Bash","target":"grep -n \"folderFilter\\|setFolderFilter\\|handleScanFolder\" /c/Users/maita/posimai","ok":true} +{"ts":"2026-04-14T06:59:38.923Z","tool":"Edit","target":"ruleEngine.ts","ok":true} +{"ts":"2026-04-14T06:59:43.093Z","tool":"Edit","target":"ScanHeader.tsx","ok":true} +{"ts":"2026-04-14T06:59:54.299Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && git diff --stat HEAD && echo ","ok":true} +{"ts":"2026-04-14T07:00:03.713Z","tool":"Bash","target":"grep -c \"^ {$\\|^ { $\" src/lib/ruleEngine.ts && grep \"id: '\" src/lib/ruleEngine","ok":true} +{"ts":"2026-04-14T07:00:17.743Z","tool":"Bash","target":"npm run build 2>&1 | tail -25","ok":true} +{"ts":"2026-04-14T07:00:25.129Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -25","ok":true} +{"ts":"2026-04-14T07:00:30.159Z","tool":"Edit","target":"ruleEngine.ts","ok":true} +{"ts":"2026-04-14T07:00:41.199Z","tool":"Edit","target":"ruleEngine.ts","ok":true} +{"ts":"2026-04-14T07:00:48.471Z","tool":"Edit","target":"ruleEngine.ts","ok":true} +{"ts":"2026-04-14T07:00:53.432Z","tool":"Edit","target":"ruleEngine.ts","ok":true} +{"ts":"2026-04-14T07:00:57.615Z","tool":"Edit","target":"ruleEngine.ts","ok":true} +{"ts":"2026-04-14T07:01:03.524Z","tool":"Edit","target":"ruleEngine.ts","ok":true} +{"ts":"2026-04-14T07:01:03.720Z","tool":"Bash","target":"pkill -f \"next build\" 2>/dev/null; sleep 2; rm -rf /c/Users/maita/posimai-projec","ok":true} +{"ts":"2026-04-14T07:01:23.337Z","tool":"Bash","target":"git add -A && git commit -m \"$(cat <<'EOF'\nfeat(guard): subfolder filter fix + 1","ok":true} +{"ts":"2026-04-14T07:01:31.269Z","tool":"Bash","target":"npm run build 2>&1 | grep -E \"error|Error|warn|✓|✗|Failed\" | head -20","ok":true} +{"ts":"2026-04-14T07:01:34.002Z","tool":"Bash","target":"grep -c \"id:\" /c/Users/maita/posimai-project/posimai-guard/src/lib/ruleEngine.ts","ok":true} +{"ts":"2026-04-14T07:01:38.076Z","tool":"Edit","target":"ScanHeader.tsx","ok":true} +{"ts":"2026-04-14T07:01:57.699Z","tool":"Bash","target":"git add -A && git commit -m \"$(cat <<'EOF'\nfix+feat(guard): subfolder filter fix","ok":true} +{"ts":"2026-04-14T07:02:01.699Z","tool":"Bash","target":"git log --oneline -5","ok":true} +{"ts":"2026-04-14T07:02:04.408Z","tool":"Bash","target":"git show 52097e6 --stat | head -15","ok":true} +{"ts":"2026-04-14T07:10:37.431Z","tool":"Edit","target":"SettingsPanel.tsx","ok":true} +{"ts":"2026-04-14T07:10:41.094Z","tool":"Edit","target":"SettingsPanel.tsx","ok":true} +{"ts":"2026-04-14T07:10:47.111Z","tool":"Edit","target":"SettingsPanel.tsx","ok":true} +{"ts":"2026-04-14T07:10:56.982Z","tool":"Edit","target":"SettingsPanel.tsx","ok":true} +{"ts":"2026-04-14T07:11:03.888Z","tool":"Edit","target":"CodeViewer.tsx","ok":true} +{"ts":"2026-04-14T07:11:12.930Z","tool":"Edit","target":"CodeViewer.tsx","ok":true} +{"ts":"2026-04-14T07:11:46.672Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -30","ok":true} +{"ts":"2026-04-14T07:11:52.644Z","tool":"Bash","target":"git add src/components/SettingsPanel.tsx src/components/CodeViewer.tsx && git co","ok":true} +{"ts":"2026-04-14T07:12:05.076Z","tool":"Bash","target":"npm run deploy 2>&1 | tail -10","ok":true} +{"ts":"2026-04-14T07:16:19.866Z","tool":"Edit","target":"ScanHeader.tsx","ok":true} +{"ts":"2026-04-14T07:16:27.520Z","tool":"Edit","target":"ScanHeader.tsx","ok":true} +{"ts":"2026-04-14T07:16:34.775Z","tool":"Edit","target":"ScanHeader.tsx","ok":true} +{"ts":"2026-04-14T07:16:50.390Z","tool":"Edit","target":"ScanHeader.tsx","ok":true} +{"ts":"2026-04-14T07:17:01.246Z","tool":"Edit","target":"ScanHeader.tsx","ok":true} +{"ts":"2026-04-14T07:17:09.672Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-14T07:17:31.453Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-14T07:17:37.483Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-14T07:17:57.607Z","tool":"Edit","target":"FileTree.tsx","ok":true} +{"ts":"2026-04-14T07:18:41.082Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -30","ok":true} +{"ts":"2026-04-14T07:18:47.426Z","tool":"Bash","target":"git add src/components/ScanHeader.tsx src/components/FileTree.tsx src/app/page.t","ok":true} +{"ts":"2026-04-14T07:18:59.228Z","tool":"Bash","target":"npm run deploy 2>&1 | tail -8","ok":true} +{"ts":"2026-04-14T07:27:08.046Z","tool":"Edit","target":"FileTree.tsx","ok":true} +{"ts":"2026-04-14T07:39:58.206Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-14T07:40:11.552Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-14T07:40:15.965Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-14T07:40:23.026Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-14T07:40:50.587Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | grep -E ","ok":true} +{"ts":"2026-04-14T07:40:58.082Z","tool":"Bash","target":"git add src/app/page.tsx src/components/FileTree.tsx && git commit -m \"$(cat <<'","ok":true} +{"ts":"2026-04-14T07:41:08.497Z","tool":"Bash","target":"npm run deploy 2>&1 | tail -6","ok":true} +{"ts":"2026-04-14T08:09:54.900Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-14T08:10:41.964Z","tool":"Write","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-14T08:11:11.583Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | grep -E ","ok":true} +{"ts":"2026-04-14T08:11:21.752Z","tool":"Bash","target":"git add src/app/page.tsx src/components/ScanResults.tsx && git commit -m \"$(cat ","ok":true} +{"ts":"2026-04-14T08:11:32.116Z","tool":"Bash","target":"npm run deploy 2>&1 | tail -6","ok":true} +{"ts":"2026-04-14T08:33:27.191Z","tool":"Edit","target":"tauri.ts","ok":true} +{"ts":"2026-04-14T08:33:34.830Z","tool":"Edit","target":"CodeViewer.tsx","ok":true} +{"ts":"2026-04-14T08:33:50.803Z","tool":"Edit","target":"CodeViewer.tsx","ok":true} +{"ts":"2026-04-14T08:34:00.955Z","tool":"Edit","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-14T08:34:05.306Z","tool":"Edit","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-14T08:34:20.902Z","tool":"Edit","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-14T08:34:26.017Z","tool":"Edit","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-14T08:34:32.750Z","tool":"Edit","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-14T08:34:46.098Z","tool":"Edit","target":"page.tsx","ok":true} +{"ts":"2026-04-14T08:35:18.345Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | grep -E ","ok":true} +{"ts":"2026-04-14T08:35:25.613Z","tool":"Bash","target":"git add src/lib/tauri.ts src/components/CodeViewer.tsx src/components/ScanResult","ok":true} +{"ts":"2026-04-14T08:35:36.302Z","tool":"Bash","target":"npm run deploy 2>&1 | tail -5","ok":true} +{"ts":"2026-04-14T08:53:28.610Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && grep -n \"// ══\\|id: '\" src/li","ok":true} +{"ts":"2026-04-14T08:54:29.559Z","tool":"Edit","target":"ruleEngine.ts","ok":true} +{"ts":"2026-04-14T08:54:35.807Z","tool":"Bash","target":"grep -c \"id: '\" src/lib/ruleEngine.ts","ok":true} +{"ts":"2026-04-14T08:54:43.236Z","tool":"Edit","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-14T08:55:04.140Z","tool":"Edit","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-14T08:55:22.165Z","tool":"Edit","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-14T08:55:58.594Z","tool":"Bash","target":"npm run build 2>&1 | grep -E \"(error TS|Error:|✓)\" | head -10","ok":true} +{"ts":"2026-04-14T08:56:11.329Z","tool":"Bash","target":"git add src/lib/ruleEngine.ts src/components/ScanResults.tsx && git commit -m \"$","ok":true} +{"ts":"2026-04-14T08:56:29.787Z","tool":"Bash","target":"npm run deploy 2>&1 | tail -5","ok":true} +{"ts":"2026-04-14T08:58:22.529Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-guard-ext/src/commands/","ok":true} +{"ts":"2026-04-14T08:58:39.325Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-guard-ext/src/scanner/ 2>/dev/null || ","ok":true} +{"ts":"2026-04-14T08:58:43.705Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-guard-ext/src/scanner/\nls /c/Users/mai","ok":true} +{"ts":"2026-04-14T09:16:31.361Z","tool":"Edit","target":"ruleEngine.ts","ok":true} +{"ts":"2026-04-14T09:16:37.710Z","tool":"Edit","target":"ruleEngine.ts","ok":true} +{"ts":"2026-04-14T09:16:49.378Z","tool":"Edit","target":"CodeViewer.tsx","ok":true} +{"ts":"2026-04-14T09:17:14.202Z","tool":"Edit","target":"CodeViewer.tsx","ok":true} +{"ts":"2026-04-14T09:17:25.507Z","tool":"Edit","target":"CodeViewer.tsx","ok":true} +{"ts":"2026-04-14T09:17:45.488Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -40","ok":true} +{"ts":"2026-04-14T09:17:50.037Z","tool":"Edit","target":"ruleEngine.ts","ok":true} +{"ts":"2026-04-14T09:18:13.963Z","tool":"Bash","target":"npm run build 2>&1 | tail -30","ok":true} +{"ts":"2026-04-14T09:18:53.844Z","tool":"Edit","target":"route.ts","ok":true} +{"ts":"2026-04-14T09:18:58.705Z","tool":"Edit","target":"route.ts","ok":true} +{"ts":"2026-04-14T09:19:11.005Z","tool":"Edit","target":"clientIp.ts","ok":true} +{"ts":"2026-04-14T09:19:40.582Z","tool":"Bash","target":"npm run build 2>&1 | tail -20","ok":true} +{"ts":"2026-04-14T09:19:44.044Z","tool":"Bash","target":"git add -A && git status","ok":true} +{"ts":"2026-04-14T09:19:52.689Z","tool":"Bash","target":"git commit -m \"$(cat <<'EOF'\nfeat(guard): add static fix templates to 85+ rules,","ok":true} +{"ts":"2026-04-14T09:20:05.345Z","tool":"Bash","target":"npm run deploy 2>&1 | tail -10","ok":true} +{"ts":"2026-04-14T09:20:15.587Z","tool":"Edit","target":"STATUS.md","ok":true} +{"ts":"2026-04-14T09:20:24.041Z","tool":"Edit","target":"STATUS.md","ok":true} +{"ts":"2026-04-14T09:20:35.933Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project && git add STATUS.md && git commit -m \"chore: ","ok":true} +{"ts":"2026-04-14T11:08:31.146Z","tool":"Edit","target":"ScanResults.tsx","ok":true} +{"ts":"2026-04-14T11:09:07.334Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard && npm run build 2>&1 | tail -5","ok":true} +{"ts":"2026-04-14T11:09:20.322Z","tool":"Bash","target":"git add src/components/ScanResults.tsx && git commit -m \"fix(guard): move Copy i","ok":true} +{"ts":"2026-04-14T13:53:53.519Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/ponshu_room_lite/build_consumer.sh 2>/dev/null","ok":true} +{"ts":"2026-04-14T13:54:01.180Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/ponshu_room_lite && git log --oneline -5 && fl","ok":true} +{"ts":"2026-04-14T13:54:04.830Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/ponshu_room_lite/.env 2>/dev/null && echo \"exi","ok":true} +{"ts":"2026-04-14T13:54:06.126Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/ponshu_room_lite/build/apk_releases/ 2>/dev/nu","ok":true} +{"ts":"2026-04-14T13:54:09.784Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/ponshu_room_lite/build/apk_releases/2026-04-12","ok":true} +{"ts":"2026-04-14T13:54:14.024Z","tool":"Bash","target":"git log --oneline --since=\"2026-04-12\" 2>/dev/null | head -10","ok":true} +{"ts":"2026-04-14T13:54:17.304Z","tool":"Bash","target":"git log --oneline --after=\"2026-04-12\" 2>&1 | head -10","ok":true} +{"ts":"2026-04-14T13:54:20.286Z","tool":"Bash","target":"git log --oneline -3","ok":true} +{"ts":"2026-04-14T13:54:24.407Z","tool":"Bash","target":"git log --format=\"%H %ci\" -5","ok":true} +{"ts":"2026-04-14T13:57:50.656Z","tool":"Bash","target":"bash build_consumer.sh 2>&1","ok":true} +{"ts":"2026-04-14T13:57:56.412Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-guard-ext/src/scanner/","ok":true} +{"ts":"2026-04-14T13:58:07.807Z","tool":"Bash","target":"ls /c/Users/maita/posimai-project/posimai-guard/cli/ 2>/dev/null && echo \"exists","ok":true} +{"ts":"2026-04-14T13:59:29.274Z","tool":"Bash","target":"cat /c/Users/maita/posimai-project/posimai-guard-ext/tsconfig.json 2>/dev/null |","ok":true} +{"ts":"2026-04-14T14:00:17.606Z","tool":"Edit","target":"tsconfig.json","ok":true} +{"ts":"2026-04-14T14:00:36.344Z","tool":"Write","target":"scanWorkspace.ts","ok":true} +{"ts":"2026-04-14T14:00:46.725Z","tool":"Write","target":"scanFile.ts","ok":true} +{"ts":"2026-04-14T14:00:51.748Z","tool":"Edit","target":"extension.ts","ok":true} +{"ts":"2026-04-14T14:01:00.276Z","tool":"Bash","target":"cd /c/Users/maita/posimai-project/posimai-guard-ext && npm run build 2>&1","ok":true} +{"ts":"2026-04-14T14:01:06.952Z","tool":"Bash","target":"grep -c \"runRuleEngine\\|RULE_FIXES\\|SEC001\" /c/Users/maita/posimai-project/posim","ok":true} +{"ts":"2026-04-14T14:01:21.160Z","tool":"Bash","target":"npm run package 2>&1","ok":true} diff --git a/tools/posimai-scribe/logs/shadow-log.jsonl b/tools/posimai-scribe/logs/shadow-log.jsonl new file mode 100644 index 00000000..75100763 --- /dev/null +++ b/tools/posimai-scribe/logs/shadow-log.jsonl @@ -0,0 +1 @@ +{"timestamp":"2026-04-02T13:43:06.910Z","message":"Antigravity(AI)と協力して、完全自動ブログ生成のプロトタイプ基盤を構築完了。魔法の準備が整った!"} diff --git a/tools/posimai-scribe/package-lock.json b/tools/posimai-scribe/package-lock.json new file mode 100644 index 00000000..7ad5d18b --- /dev/null +++ b/tools/posimai-scribe/package-lock.json @@ -0,0 +1,37 @@ +{ + "name": "posimai-scribe", + "version": "2.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "posimai-scribe", + "version": "2.0.0", + "dependencies": { + "@google/generative-ai": "^0.24.1", + "dotenv": "^16.4.5" + } + }, + "node_modules/@google/generative-ai": { + "version": "0.24.1", + "resolved": "https://registry.npmjs.org/@google/generative-ai/-/generative-ai-0.24.1.tgz", + "integrity": "sha512-MqO+MLfM6kjxcKoy0p1wRzG3b4ZZXtPI+z2IE26UogS2Cm/XHO+7gGRBh6gcJsOiIVoH93UwKvW4HdgiOZCy9Q==", + "license": "Apache-2.0", + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/dotenv": { + "version": "16.6.1", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.6.1.tgz", + "integrity": "sha512-uBq4egWHTcTt33a72vpSG0z3HnPuIl6NqYcTrKEg2azoEyl2hpW0zqlxysq2pK9HlDIHyHyakeYaYnSAwd8bow==", + "license": "BSD-2-Clause", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" + } + } + } +} diff --git a/tools/posimai-scribe/scripts/start-diary-server.vbs b/tools/posimai-scribe/scripts/start-diary-server.vbs new file mode 100644 index 00000000..58609956 --- /dev/null +++ b/tools/posimai-scribe/scripts/start-diary-server.vbs @@ -0,0 +1,4 @@ +' posimai-scribe diary-server 自動起動スクリプト +' ウィンドウを表示せずに Node サーバーをバックグラウンド起動する +Set WshShell = CreateObject("WScript.Shell") +WshShell.Run "node C:\Users\maita\posimai-project\tools\posimai-scribe\src\diary-server.js", 0, False