BLA
BLA (Blind LLM Agents) is the open-source Blue Defense MCP and CLI built to protect software artifacts against automated AI reverse-engineering workflows.
Live demo of the Risk, Fraud & Regulatory Intelligence Copilot. Runs in your browser with fake sample data; no Snowflake, no AI call.
SecurityPython · HTMLGitHub @Arunkumar06-cmdOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
AI copilot for bank compliance: English questions to verified SQL evidence + cited law + officer-approved SAR drafts (Snowflake Cortex AI + Streamlit). Live demo runs in your browser.
Taken from the repository README
Loading the full README. The saved excerpt is shown below.
An AI copilot for bank and NBFC compliance teams.
Ask in plain English. Get proof rows from the database, the three rule clauses that fit, and a draft Suspicious Activity Report.
Nothing is saved until a listed compliance officer approves it.
1 · In your browser (no install, no keys). Open the live demo.
• Pick analyst or officer and press a quick query.
• Demo mode uses fake sample data and a template draft (no AI call), and sends nothing to Snowflake.
• The first load takes 20–60 seconds while Python starts in the browser.
2 · On your machine.Read the full README ↗CoCo CLI Hackathon · GCC Edition · Team Behelit · Arun Kumar (solo)
| Evidence, not guesses | Fixed, allow-listed SQL pulls the transaction rows. User text is sent as a bound value (separate from the SQL), never pasted into the query. |
| Law by meaning | AI_EMBED turns each rule clause into 768 numbers; cosine similarity picks the TOP-3 clauses for the question. Cortex Search (hybrid search) is optional. |
| A draft with receipts | AI_COMPLETE (claude-sonnet-5, fallback llama3.1-8b) writes the SAR with the Cortex Guard harm filter always on. Every draft is fingerprinted with SHA-256. |
| A human signs | Only users in APP_OFFICERS can approve. The check runs on the server at click time. Denied tries are logged under the real viewer's name. |
1 · In your browser (no install, no keys). Open the live demo.
2 · On your machine.
git clone https://github.com/Arunkumar06-cmd/risk-intelligence-copilot.git && cd risk-intelligence-copilot
pip install -r requirements.txt -r requirements-dev.txt
DEMO_MODE=TRUE streamlit run streamlit_app.py # demo mode, no keys needed
# or, for the real Snowflake path:
cp .streamlit/secrets.toml.example .streamlit/secrets.toml # add your Snowflake keys + APP_PASSWORD
streamlit run streamlit_app.py
3 · Inside Snowflake.
sql/01_setup.sql, then sql/03_rate_limit.sql, then sql/02_sis_deploy.sql.flowchart LR
Q([English question]) --> G[Input guard<br/>+ rate limit]
G --> R[Intent router<br/>whole-word]
R --> E[(Evidence SQL<br/>bound values)]
R --> L[(Law search<br/>AI_EMBED TOP-3)]
E --> P[Prompt builder<br/>≤350 words]
L --> P
P --> C[AI_COMPLETE<br/>guardrails ON]
C --> D[Draft SAR<br/>+ SHA-256]
D --> O{{Officer gate<br/>APP_OFFICERS}}
O -->|approve| A[(AUDIT_LOGS<br/>APPROVED)]
O -->|blocked| X[(AUDIT_LOGS<br/>APPROVE_DENIED)]
The plain-words version, with the real SQL and numbers behind each box, is in the Feynman explainer.
| Metric | Value | Where it is enforced |
|---|---|---|
| Law clauses per question | 3 | config.TOP_K |
| Evidence rows per draft | 5 | config.EVIDENCE_TX_LIMIT |
| AI calls without the harm filter | 0 | AI_COMPLETE_SQL sets {'guardrails': TRUE}; no unguarded retry |
| Max question length · prompt size | 2000 chars · 350 words | MAX_INPUT_LEN, MAX_PROMPT_WORDS |
| Rate limits | 10 / min / session · 50 / hour / user | check_rate, RATE_LIMIT table (fails closed) |
| Automated tests | 102 (no Snowflake needed) | tests/ |
.
├── streamlit_app.py # UI: login, KPI strip, chat, evidence inspector, officer sign-off
├── backend/
│ ├── hybrid_agent.py # guard → router → evidence SQL → law search → AI draft → officer gate → audit
│ ├── runtime.py # where am I running? local · Snowflake (SiS) · viewer identity
│ ├── demo.py # demo mode: sample rows, sample clauses, template draft
│ └── config.py # settings, model allow-lists, limits (single source of truth)
├── sql/ # run in order: 01 setup · 02 SiS deploy · 03 rate limit · 04 optional Cortex Search
├── tests/ # 102 pytest checks, fake database only
├── site/index.html # GitHub Pages shell that runs the app in the browser (stlite)
├── docs/
│ ├── ARCHITECTURE.md # deep reference: pipeline, models, SiS deploy, security model, cost
│ ├── context.html # Feynman explainer (also live on Pages)
│ ├── deck/ # hackathon slides (.pptx)
│ └── assets/ # screenshots
├── .github/ # CI, security, release, Pages workflows · issue/PR templates · Dependabot
├── context.md # handoff notes for the next engineer or agent
├── CHANGELOG.md · CONTRIBUTING.md · SECURITY.md · LICENSE
└── pyproject.toml · requirements.txt · requirements-dev.txt · .pre-commit-config.yaml · .editorconfig
| Read this | When you want |
|---|---|
| Feynman explainer | The idea in plain words, then the real machinery |
| docs/ARCHITECTURE.md | Models, Cortex Search, the Snowflake deploy, security model, cost |
| context.md | Handoff notes and decisions that must not regress |
| CONTRIBUTING.md | Setup, checks to run, commit format |
| SECURITY.md | How to report a hole, the scans that run, the access model |
| CHANGELOG.md · Releases | What changed in each version |
LIMIT/OFFSET.temperature 0, and only allow-listed models can be called.APP_OFFICERS.Behelit: Arun Kumar (@Arunkumar06-cmd), solo build for the CoCo CLI Hackathon, GCC Edition.