Open-source black box recorder for AI agents.
Drift inferred · capture-to-capture
No drift recorded — single capability capture; advisories appear once its surface changes.
transport stdio · http counts 48 tools · 0 res
· 0 prompts
permission surface via code analysis
tools
-
attach_artifact
-
finish_workstream
-
record_event
-
sortiri_confirm_decision_candidate
-
sortiri_convert_recommendation_to_workstream
-
sortiri_convert_remediation_to_workstream
-
sortiri_create_context_pack
-
sortiri_create_incident_rollback
-
sortiri_create_rollback
-
sortiri_dismiss_decision_candidate
-
sortiri_generate_context_from_recommendation
-
sortiri_generate_eval_suite
-
sortiri_generate_recommendations
-
sortiri_generate_remediation_from_eval
-
sortiri_get_context_pack
-
sortiri_get_decision
-
sortiri_get_entity_memory
-
sortiri_get_eval_remediation
-
sortiri_get_eval_run
-
sortiri_get_eval_suite
-
sortiri_get_incident
-
sortiri_get_ingest_delivery
-
sortiri_get_known_failures
-
sortiri_get_project_memory
-
sortiri_get_recommendation
-
sortiri_get_recommended_playbook
-
sortiri_get_source_health
-
sortiri_get_validation_requirements
-
sortiri_link_decision_to_workstream
-
sortiri_link_incident_to_decision
-
sortiri_link_incident_to_workstream
-
sortiri_list_dead_letters
-
sortiri_list_decision_candidates
-
sortiri_list_decisions
-
sortiri_list_eval_remediations
-
sortiri_list_eval_suites
-
sortiri_list_incidents
-
sortiri_list_ingest_deliveries
-
sortiri_list_observability_signals
-
sortiri_list_recommendations
-
sortiri_recommend_evals_for_workstream
-
sortiri_record_decision
-
sortiri_record_incident
-
sortiri_replay_ingest_delivery
-
sortiri_rerun_eval_for_remediation
-
sortiri_resolve_incident
-
sortiri_run_eval_suite
-
start_workstream
prompt-surface
shipped agent-instruction files + hidden-content / dangerous-code findings —
quoted from the analyzed source
analyzed commit aa14dcd · analyzer v33 · 3d ago
skills & prompt files 3
- agent-rules Sortiri-sortiri-aa14dcd/AGENTS.md
- agent-rules Sortiri-sortiri-aa14dcd/CLAUDE.md
- agent-rules Sortiri-sortiri-aa14dcd/examples/demo-agent-project/.cursor/rules/sortiri.mdc
danger signals2
- credential in logs credential in log Sortiri-sortiri-aa14dcd/scripts/sanity-enterprise-reliability.ts :90
console.log(` [PASS] created dev API key ${evidence.maskedApiKey}`); - credential in logs credential in log Sortiri-sortiri-aa14dcd/scripts/sanity-eval-remediation-loop.ts :150
console.log(` [PASS] created dev API key ${evidence.maskedApiKey}`);
evidence-backed
findings quoted directly from the published source artifact — not inferred
code files: 1033
filesystem 63
- fs Sortiri-sortiri-aa14dcd/packages/cli/src/commands/doctor.ts :1
import fs from "node:fs"; - fs Sortiri-sortiri-aa14dcd/packages/cli/src/commands/export.ts :1
import fs from "node:fs"; - fs Sortiri-sortiri-aa14dcd/packages/cli/src/lib/cursorSetup.ts :1
import fs from "node:fs"; - fs Sortiri-sortiri-aa14dcd/packages/sortiri-local/src/config.ts :1
import fs from "node:fs"; - fs Sortiri-sortiri-aa14dcd/packages/sortiri-local/src/events.ts :1
import fs from "node:fs"; - fs Sortiri-sortiri-aa14dcd/packages/sortiri-local/src/paths.ts :1
import fs from "node:fs"; - fs Sortiri-sortiri-aa14dcd/packages/sortiri-local/src/session.ts :1
import fs from "node:fs"; - fs Sortiri-sortiri-aa14dcd/playwright.config.ts :2
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/assert-no-landing-changes.ts :9
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/assert-no-next-backend-routes.ts :5
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/audit-next-api-routes.ts :5
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/demo-open-source-local.ts :7
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/generate-oss-launch-assets.ts :5
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/lib/sanity-context-helpers.ts :1
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/migrate-github-secrets.ts :7
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/reliability-backup-drill.ts :6
import fs from "node:fs/promises"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/replace-next-routes-gone.ts :5
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-audit-export-share.ts :7
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-audit-reports.ts :7
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-cli-context.ts :6
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-cli-decisions.ts :6
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-cli-eval-remediation.ts :6
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-cli-evals.ts :6
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-cli-incidents.ts :6
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-cli-recommendations.ts :6
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-cli-reliability.ts :6
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-evidence-safety.ts :7
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-github-open-source-infra.ts :5
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-impact-analysis.ts :7
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-intelligence-hub.ts :7
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-lessons-playbooks.ts :7
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-observability-incident-memory.ts :6
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-open-source-project.ts :5
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-open-source-star-readiness.ts :6
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-project-access.ts :8
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-stripe-integration.ts :7
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/scan-oss-trust.ts :5
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/setup-e2e-auth.ts :10
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/setup-github-open-source-infra.ts :17
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/test-cli-run.ts :13
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/scripts/test-cli-setup.ts :13
import fs from "node:fs"; - fs Sortiri-sortiri-aa14dcd/src/lib/reliability/localJournal.ts :2
import fs from "node:fs/promises"; - fs (weak) Sortiri-sortiri-aa14dcd/tests/cli/config.test.ts :1
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/tests/cli/init.test.ts :1
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/tests/e2e/global-setup.ts :4
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/tests/helpers/tempProject.ts :2
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/tests/unit/convex-observability-webhook.test.ts :1
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/tests/unit/cursor-rules-generation.test.ts :1
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/tests/unit/docs-trust-safety.test.ts :1
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/tests/unit/github-infra-config.test.ts :1
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/tests/unit/incident-status.test.ts :1
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/tests/unit/launch-assets.test.ts :1
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/tests/unit/local-cli-init.test.ts :1
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/tests/unit/local-cli-record-export.test.ts :1
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/tests/unit/local-journal.test.ts :1
import fs from "node:fs/promises"; - fs (weak) Sortiri-sortiri-aa14dcd/tests/unit/mcp-config-generation.test.ts :4
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/tests/unit/no-next-api-backend.test.ts :2
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/tests/unit/observability-normalization.test.ts :1
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/tests/unit/open-source-readme.test.ts :1
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/tests/unit/oss-trust-scan.test.ts :1
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/tests/unit/package-metadata.test.ts :1
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/tests/unit/positioning-language.test.ts :1
import fs from "node:fs"; - fs (weak) Sortiri-sortiri-aa14dcd/tests/unit/readme-star-readiness.test.ts :1
import fs from "node:fs";
shell / exec 29
- shell Sortiri-sortiri-aa14dcd/packages/cli/src/commands/evals.ts :1
import { spawn } from "node:child_process"; - shell Sortiri-sortiri-aa14dcd/packages/cli/src/lib/commandCapture.ts :1
import { spawn } from "node:child_process"; - shell Sortiri-sortiri-aa14dcd/packages/cli/src/lib/repo.ts :1
import { execSync } from "node:child_process"; - shell Sortiri-sortiri-aa14dcd/packages/cli/src/watcher.ts :1
import { execFile } from "node:child_process"; - shell (weak) Sortiri-sortiri-aa14dcd/scripts/assert-no-landing-changes.ts :8
import { execSync } from "node:child_process"; - shell (weak) Sortiri-sortiri-aa14dcd/scripts/demo-open-source-local.ts :6
import { execSync } from "node:child_process"; - shell (weak) Sortiri-sortiri-aa14dcd/scripts/lib/eval-case-executors.ts :1
import { execSync } from "node:child_process"; - shell (weak) Sortiri-sortiri-aa14dcd/scripts/lib/sanity-eval-helpers.ts :197
const { spawnSync } = await import("node:child_process"); - shell (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-cli-context.ts :5
import { execSync } from "node:child_process"; - shell (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-cli-decisions.ts :5
import { execSync } from "node:child_process"; - shell (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-cli-eval-remediation.ts :5
import { execSync } from "node:child_process"; - shell (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-cli-evals.ts :5
import { execSync } from "node:child_process"; - shell (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-cli-incidents.ts :5
import { execSync } from "node:child_process"; - shell (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-cli-recommendations.ts :5
import { execSync } from "node:child_process"; - shell (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-cli-reliability.ts :5
import { execSync } from "node:child_process"; - shell (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-convex-api-surface.ts :5
import { spawnSync } from "node:child_process"; - shell (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-observability-incident-memory.ts :338
const { execSync } = await import("node:child_process"); - shell (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-open-source-star-readiness.ts :5
import { execSync } from "node:child_process"; - shell (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-platform-pages-ui.ts :5
import { execSync } from "node:child_process"; - shell (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-platform-ui-ux.ts :5
import { execSync } from "node:child_process"; - shell (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-slack-decision-memory.ts :176
const { execSync } = await import("node:child_process"); - shell (weak) Sortiri-sortiri-aa14dcd/scripts/setup-e2e-auth.ts :29
const { execSync } = await import("node:child_process"); - shell (weak) Sortiri-sortiri-aa14dcd/scripts/setup-github-branch-protection.ts :13
import { execSync } from "node:child_process"; - shell (weak) Sortiri-sortiri-aa14dcd/scripts/setup-github-labels.ts :13
import { execSync } from "node:child_process"; - shell (weak) Sortiri-sortiri-aa14dcd/scripts/setup-github-open-source-infra.ts :16
import { execSync } from "node:child_process"; - shell (weak) Sortiri-sortiri-aa14dcd/scripts/test-cli-run.ts :12
import { execSync } from "node:child_process"; - shell (weak) Sortiri-sortiri-aa14dcd/scripts/test-cli-setup.ts :12
import { execSync } from "node:child_process"; - shell (weak) Sortiri-sortiri-aa14dcd/tests/e2e/global-setup.ts :3
import { type ChildProcess, spawn } from "node:child_process"; - shell (weak) Sortiri-sortiri-aa14dcd/tests/helpers/tempProject.ts :1
import { execSync } from "node:child_process";
network 41
- net Sortiri-sortiri-aa14dcd/packages/cli/src/commands/context.ts :30
const response = await fetch( - net Sortiri-sortiri-aa14dcd/packages/cli/src/commands/decisions.ts :38
const response = await fetch(`${config.apiUrl}/cli/decisions`, { - net Sortiri-sortiri-aa14dcd/packages/cli/src/commands/doctor.ts :46
const response = await fetch(url, { - net Sortiri-sortiri-aa14dcd/packages/cli/src/commands/evals.ts :37
const response = await fetch(`${config.apiUrl}/cli/evals?${params.toString()}`, { - net Sortiri-sortiri-aa14dcd/packages/cli/src/commands/incidents.ts :46
const response = await fetch(`${config.apiUrl}/cli/incidents`, { - net Sortiri-sortiri-aa14dcd/packages/cli/src/commands/init.ts :71
const response = await fetch(`${apiUrl.replace(/\/$/, "")}/cli/setup/consume`, { - net Sortiri-sortiri-aa14dcd/packages/cli/src/commands/recommendations.ts :32
const response = await fetch(`${config.apiUrl}/cli/recommendations?${params.toString()}`, { - net Sortiri-sortiri-aa14dcd/packages/cli/src/commands/reliability.ts :36
const response = await fetch( - net Sortiri-sortiri-aa14dcd/packages/cli/src/ingestClient.ts :71
const response = await fetch(`${this.config.apiUrl}/ingest/artifacts`, { - net Sortiri-sortiri-aa14dcd/packages/cli/src/localViewer.ts :1
import http from "node:http"; - net Sortiri-sortiri-aa14dcd/packages/mcp/src/client.ts :13
const response = await fetch(`${this.config.apiUrl}${path}`, { - net Sortiri-sortiri-aa14dcd/packages/sdk/src/client.ts :122
const response = await fetch(`${apiUrl}/ingest/events`, { - net (weak) Sortiri-sortiri-aa14dcd/scripts/lib/eval-case-executors.ts :78
const response = await fetch(url); - net (weak) Sortiri-sortiri-aa14dcd/scripts/lib/sanity-context-helpers.ts :89
const response = await fetch(`https://api.clerk.com/v1${route}`, { - net (weak) Sortiri-sortiri-aa14dcd/scripts/lib/sanity-eval-helpers.ts :50
return fetch(`${appUrl}/cli/evals?${params.toString()}`, { - net (weak) Sortiri-sortiri-aa14dcd/scripts/lib/sanity-recommendation-helpers.ts :44
return fetch(`${appUrl}/cli/recommendations?${params.toString()}`, { - net (weak) Sortiri-sortiri-aa14dcd/scripts/lib/sanity-reliability-helpers.ts :90
const response = await fetch(`${apiUrl}/ingest/events`, { - net (weak) Sortiri-sortiri-aa14dcd/scripts/run-eval-suite.ts :51
const response = await fetch(`${appUrl}${path}`, { - net (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-audit-export-share.ts :48
const response = await fetch(`https://api.clerk.com/v1${route}`, { - net (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-audit-reports.ts :47
const response = await fetch(`https://api.clerk.com/v1${route}`, { - net (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-enterprise-reliability.ts :92
const missingAuth = await fetch(`${apiUrl}/ingest/events`, { - net (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-eval-remediation-loop.ts :152
const missingAuth = await fetch(`${appUrl}/cli/evals/remediation?workspaceId=${story.workspaceId}`); - net (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-evidence-safety.ts :47
const response = await fetch(`https://api.clerk.com/v1${route}`, { - net (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-impact-analysis.ts :47
const response = await fetch(`https://api.clerk.com/v1${route}`, { - net (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-integration-secrets.ts :28
const response = await fetch(`https://api.clerk.com/v1${route}`, { - net (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-intelligence-hub.ts :51
const response = await fetch(`https://api.clerk.com/v1${route}`, { - net (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-lessons-playbooks.ts :48
const response = await fetch(`https://api.clerk.com/v1${route}`, { - net (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-observability-incident-memory.ts :52
return fetch(`${apiUrl}/webhooks/observability?workspaceId=${encodeURIComponent(workspaceId)}`, { - net (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-posthog-integration.ts :23
const response = await fetch(`https://api.clerk.com/v1${route}`, { - net (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-project-access.ts :63
const response = await fetch(`https://api.clerk.com/v1${route}`, { - net (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-slack-decision-memory.ts :37
return fetch(`${apiUrl}/webhooks/slack?workspaceId=${encodeURIComponent(workspaceId)}`, { - net (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-stripe-integration.ts :48
const response = await fetch(`https://api.clerk.com/v1${route}`, { - net (weak) Sortiri-sortiri-aa14dcd/scripts/setup-e2e-auth.ts :58
const response = await fetch(`${AGENTMAIL_BASE}${route}`, { - net (weak) Sortiri-sortiri-aa14dcd/scripts/test-cli-setup.ts :105
const healthResponse = await fetch( - net (weak) Sortiri-sortiri-aa14dcd/scripts/test-github-webhook.ts :56
const response = await fetch( - net (weak) Sortiri-sortiri-aa14dcd/scripts/test-posthog-webhook.ts :63
const response = await fetch( - net (weak) Sortiri-sortiri-aa14dcd/scripts/test-stripe-webhook.ts :143
const response = await fetch( - net (weak) Sortiri-sortiri-aa14dcd/scripts/verify-convex-http-url.ts :43
const healthRes = await fetch(`${apiUrl}/health`); - net Sortiri-sortiri-aa14dcd/src/components/audits/SharedAuditReportViewer.tsx :75
const response = await fetch(`/api/share/audit/${token}/artifacts/${artifactId}`); - net (weak) Sortiri-sortiri-aa14dcd/src/components/sources/test-event-button.tsx :30
const response = await fetch(buildIngestEventsUrl(), { - net (weak) Sortiri-sortiri-aa14dcd/tests/e2e/global-setup.ts :18
const response = await fetch(baseURL);
secrets 48
- secrets Sortiri-sortiri-aa14dcd/convex/agents/askSortiriAgent.ts :10
apiKey: process.env.CRUSOE_API_KEY, - secrets Sortiri-sortiri-aa14dcd/convex/agents/insightAgent.ts :10
apiKey: process.env.CRUSOE_API_KEY, - secrets Sortiri-sortiri-aa14dcd/convex/cliRun.ts :6
const expected = process.env.SORTIRI_INTEGRATION_SERVER_KEY; - secrets Sortiri-sortiri-aa14dcd/convex/cliSetup.ts :31
const expected = process.env.SORTIRI_INTEGRATION_SERVER_KEY; - secrets Sortiri-sortiri-aa14dcd/convex/integrations/github.ts :40
const expected = process.env.SORTIRI_INTEGRATION_SERVER_KEY; - secrets Sortiri-sortiri-aa14dcd/convex/integrations/migrate.ts :20
const expected = process.env.SORTIRI_INTEGRATION_SERVER_KEY; - secrets Sortiri-sortiri-aa14dcd/convex/integrations/observability.ts :39
const expected = process.env.SORTIRI_INTEGRATION_SERVER_KEY; - secrets Sortiri-sortiri-aa14dcd/convex/integrations/posthog.ts :37
const expected = process.env.SORTIRI_INTEGRATION_SERVER_KEY; - secrets Sortiri-sortiri-aa14dcd/convex/integrations/slack.ts :30
const expected = process.env.SORTIRI_INTEGRATION_SERVER_KEY; - secrets Sortiri-sortiri-aa14dcd/convex/integrations/stripe.ts :34
const expected = process.env.SORTIRI_INTEGRATION_SERVER_KEY; - secrets Sortiri-sortiri-aa14dcd/convex/lib/httpAuth.ts :49
const devKey = process.env.SORTIRI_DEV_INGEST_KEY; - secrets Sortiri-sortiri-aa14dcd/convex/lib/ingestAuth.ts :7
const expected = process.env.SORTIRI_DEV_INGEST_KEY; - secrets Sortiri-sortiri-aa14dcd/convex/lib/reliabilityIngestAuth.ts :16
const expected = process.env.SORTIRI_INTEGRATION_SERVER_KEY; - secrets Sortiri-sortiri-aa14dcd/convex/lib/secretsLib.ts :5
const raw = process.env.SORTIRI_SECRET_ENCRYPTION_KEY?.trim(); - secrets Sortiri-sortiri-aa14dcd/packages/cli/src/commands/decisions.ts :164
const secret = signingSecret ?? process.env.SORTIRI_SLACK_SIGNING_SECRET; - secrets Sortiri-sortiri-aa14dcd/packages/cli/src/commands/incidents.ts :177
const secret = signingSecret ?? process.env.SORTIRI_OBSERVABILITY_SIGNING_SECRET; - secrets (weak) Sortiri-sortiri-aa14dcd/packages/sdk/examples/basic.ts :4
const apiKey = process.env.SORTIRI_API_KEY ?? process.env.SORTIRI_DEV_INGEST_KEY; - secrets (weak) Sortiri-sortiri-aa14dcd/packages/sdk/examples/nextjs-route.ts :5
apiKey: process.env.SORTIRI_API_KEY!, - secrets Sortiri-sortiri-aa14dcd/packages/sortiri-local/src/config.ts :35
const apiKey = process.env.SORTIRI_API_KEY?.trim(); - secrets (weak) Sortiri-sortiri-aa14dcd/scripts/lib/sanity-reliability-helpers.ts :52
const key = process.env.SORTIRI_DEV_INGEST_KEY?.trim(); - secrets (weak) Sortiri-sortiri-aa14dcd/scripts/replay-ingest-journal.ts :15
const key = process.env.SORTIRI_DEV_INGEST_KEY; - secrets (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-cli-context.ts :85
const rawApiKey = process.env.SANITY_CONTEXT_API_KEY?.trim(); - secrets (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-mcp-context-tools.ts :76
const rawApiKey = process.env.SANITY_CONTEXT_API_KEY?.trim(); - secrets (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-posthog-integration.ts :214
if (!process.env.KEEP_WEBHOOK_SECRET) { - secrets (weak) Sortiri-sortiri-aa14dcd/scripts/sanity-stripe-integration.ts :238
if (!process.env.KEEP_WEBHOOK_SECRET) { - secrets (weak) Sortiri-sortiri-aa14dcd/scripts/setup-e2e-auth.ts :211
const password = process.env.E2E_PASSWORD?.trim() ?? DEFAULT_PASSWORD; - secrets (weak) Sortiri-sortiri-aa14dcd/scripts/test-cli-run.ts :54
const serverKey = process.env.SORTIRI_INTEGRATION_SERVER_KEY; - secrets (weak) Sortiri-sortiri-aa14dcd/scripts/test-cli-setup.ts :37
const serverKey = process.env.SORTIRI_INTEGRATION_SERVER_KEY; - secrets (weak) Sortiri-sortiri-aa14dcd/scripts/test-github-webhook.ts :17
const webhookSecret = process.env.WEBHOOK_SECRET; - secrets (weak) Sortiri-sortiri-aa14dcd/scripts/test-posthog-webhook.ts :87
const webhookSecret = process.env.WEBHOOK_SECRET; - secrets (weak) Sortiri-sortiri-aa14dcd/scripts/test-stripe-webhook.ts :166
const webhookSecret = process.env.WEBHOOK_SECRET; - secrets Sortiri-sortiri-aa14dcd/src/components/landing/code-card/snippets.ts :9
apiKey: process.env.SORTIRI_API_KEY, - secrets Sortiri-sortiri-aa14dcd/src/components/sources/sources-page.tsx :33
apiKey: process.env.SORTIRI_API_KEY!, - secrets Sortiri-sortiri-aa14dcd/src/lib/reliability/objectStorageJournal.ts :20
const secretKey = process.env.SORTIRI_JOURNAL_SECRET_ACCESS_KEY; - secrets Sortiri-sortiri-aa14dcd/src/lib/security/secrets.ts :8
const raw = process.env.SORTIRI_SECRET_ENCRYPTION_KEY?.trim(); - secrets Sortiri-sortiri-aa14dcd/src/lib/sortiri/ingestApi.ts :20
const key = process.env.SORTIRI_DEV_INGEST_KEY; - secrets Sortiri-sortiri-aa14dcd/src/lib/sortiri/ingestAuth.ts :30
const devKey = process.env.SORTIRI_DEV_INGEST_KEY; - secrets (weak) Sortiri-sortiri-aa14dcd/tests/cli/config.test.ts :12
const prevApiKey = process.env.SORTIRI_API_KEY; - secrets (weak) Sortiri-sortiri-aa14dcd/tests/cli/incidents.test.ts :86
const prev = process.env.SORTIRI_OBSERVABILITY_SIGNING_SECRET; - secrets (weak) Sortiri-sortiri-aa14dcd/tests/e2e/global-setup.ts :110
const ownerPassword = process.env.E2E_PASSWORD; - secrets (weak) Sortiri-sortiri-aa14dcd/tests/e2e/helpers/auth.ts :4
process.env.E2E_EMAIL?.trim() && process.env.E2E_PASSWORD?.trim(), - secrets (weak) Sortiri-sortiri-aa14dcd/tests/helpers/seedTestData.ts :12
const authToken = process.env.E2E_CONVEX_AUTH_TOKEN; - secrets (weak) Sortiri-sortiri-aa14dcd/tests/unit/github-encrypted-webhook.test.ts :11
process.env.SORTIRI_SECRET_ENCRYPTION_KEY = Buffer.alloc(32, 3).toString("base64"); - secrets (weak) Sortiri-sortiri-aa14dcd/tests/unit/github-secret-migration.test.ts :7
process.env.SORTIRI_SECRET_ENCRYPTION_KEY = Buffer.alloc(32, 9).toString("base64"); - secrets (weak) Sortiri-sortiri-aa14dcd/tests/unit/integration-connection-functions.test.ts :7
process.env.SORTIRI_SECRET_ENCRYPTION_KEY = Buffer.alloc(32, 7).toString("base64"); - secrets (weak) Sortiri-sortiri-aa14dcd/tests/unit/integration-secrets.test.ts :6
process.env.SORTIRI_SECRET_ENCRYPTION_KEY = Buffer.alloc(32, 7).toString("base64"); - secrets (weak) Sortiri-sortiri-aa14dcd/tests/unit/posthog-webhook-functions.test.ts :12
process.env.SORTIRI_SECRET_ENCRYPTION_KEY = Buffer.alloc(32, 7).toString("base64"); - secrets (weak) Sortiri-sortiri-aa14dcd/tests/unit/stripe-webhook-functions.test.ts :7
process.env.SORTIRI_SECRET_ENCRYPTION_KEY = Buffer.alloc(32, 7).toString("base64");
tool registrations 52
- start_workstream Sortiri-sortiri-aa14dcd/packages/mcp/src/localServer.ts :14
- record_event Sortiri-sortiri-aa14dcd/packages/mcp/src/localServer.ts :27
- attach_artifact Sortiri-sortiri-aa14dcd/packages/mcp/src/localServer.ts :51
- finish_workstream Sortiri-sortiri-aa14dcd/packages/mcp/src/localServer.ts :68
- start_workstream Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :76
- record_event Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :94
- attach_artifact Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :107
- finish_workstream Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :120
- sortiri_create_context_pack Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :134
- sortiri_get_context_pack Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :152
- sortiri_get_project_memory Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :165
- sortiri_get_entity_memory Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :178
- sortiri_get_known_failures Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :191
- sortiri_get_validation_requirements Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :204
- sortiri_get_recommended_playbook Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :217
- sortiri_list_recommendations Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :230
- sortiri_get_recommendation Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :243
- sortiri_generate_recommendations Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :256
- sortiri_convert_recommendation_to_workstream Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :268
- sortiri_generate_context_from_recommendation Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :281
- sortiri_generate_eval_suite Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :294
- sortiri_list_eval_suites Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :307
- sortiri_get_eval_suite Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :320
- sortiri_run_eval_suite Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :333
- sortiri_get_eval_run Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :346
- sortiri_recommend_evals_for_workstream Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :359
- sortiri_generate_remediation_from_eval Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :372
- sortiri_list_eval_remediations Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :385
- sortiri_get_eval_remediation Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :398
- sortiri_convert_remediation_to_workstream Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :411
- sortiri_rerun_eval_for_remediation Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :424
- sortiri_list_ingest_deliveries Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :437
- sortiri_get_ingest_delivery Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :450
- sortiri_list_dead_letters Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :463
- sortiri_replay_ingest_delivery Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :476
- sortiri_get_source_health Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :489
- sortiri_record_decision Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :501
- sortiri_list_decisions Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :512
- sortiri_get_decision Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :523
- sortiri_link_decision_to_workstream Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :534
- sortiri_create_rollback Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :545
- sortiri_list_decision_candidates Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :556
- sortiri_confirm_decision_candidate Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :567
- sortiri_dismiss_decision_candidate Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :578
- sortiri_record_incident Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :589
- sortiri_list_incidents Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :600
- sortiri_get_incident Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :611
- sortiri_resolve_incident Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :622
- sortiri_create_incident_rollback Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :633
- sortiri_link_incident_to_workstream Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :644
- sortiri_link_incident_to_decision Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :655
- sortiri_list_observability_signals Sortiri-sortiri-aa14dcd/packages/mcp/src/server.ts :666
declared dependencies 29
- @modelcontextprotocol/sdk@^1.29.0
- @ai-sdk/openai@^3.0.71
- @clerk/nextjs@^7.5.2
- @convex-dev/agent@^0.6.3
- @radix-ui/react-tooltip@^1.2.9
- @sortiri/sdk@*
- @sortiri/security@*
- ai@^6.0.204
- convex@^1.41.0
- motion@^12.40.0
- next@16.2.9
- pixelarticons@^2.1.2
- react@19.2.4
- react-dom@19.2.4
- @clerk/testing@^2.1.1
- @playwright/test@^1.60.0
- @tailwindcss/postcss@^4
- @types/node@^20
- @types/react@^19
- @types/react-dom@^19
- @vitest/coverage-v8@^4.1.8
- eslint@^9
- eslint-config-next@16.2.9
- playwright@^1.60.0
- tailwindcss@^4
- tsx@^4.22.4
- typescript@^5
- vitest@^4.1.8
- zod@^4.4.3
cursor-plugin 1
- opaque (low) Sortiri-sortiri-aa14dcd/examples/demo-agent-project/.cursor/rules/sortiri.mdc
bundled .cursor/ plugin descriptor (Sortiri-sortiri-aa14dcd/examples/demo-agent-project/.cursor/rules/sortiri.mdc) — presence-detected; review the descriptor