osint-methodologies

Riksdagsmonitor is a comprehensive intelligence platform for monitoring political activity in Sweden's Riksdag (Parliament). Built on the Citizen Intelligence Agency (CIA) platform, we provide systematic transparency through real-time analysis and 50+ years of historical data.

Installation
CLI
npx skills add https://github.com/hack23/riksdagsmonitor --skill osint-methodologies

Installieren Sie diesen Skill รผber die CLI und beginnen Sie mit der Verwendung des SKILL.md-Workflows in Ihrem Arbeitsbereich.

Zuletzt aktualisiert am 5/15/2026

๐Ÿ—ณ๏ธ Riksdagsmonitor

Swedish Political Intelligence Platform โ€” democratic transparency, evidence-based analysis and AI-generated political news, powered by official open data and a fully autonomous agentic newsroom.

Riksdagsmonitor

๐Ÿ•ต๏ธ Political intelligence ยท ๐Ÿ” Democratic transparency ยท ๐Ÿค– AI-generated news ยท ๐Ÿ“Š 50+ years of evidence

Riksdagsmonitor monitors Sweden's Riksdag (Parliament), the Government (Regeringskansliet) and public agencies (Myndigheter) with structured intelligence techniques โ€” ACH, SWOT, PESTLE, STRIDE, political-risk scoring and OSINT/INTOP tradecraft โ€” applied to 349 current MPs, 2,494 historical politicians (1971โ€“2024), 3.5M+ votes and 109,000+ parliamentary documents.

An autonomous AI newsroom โ€” 14 agentic workflows, Claude Sonnet, zero human editors โ€” turns this evidence into publication-ready intelligence articles in 14 languages, every day.

OpenSSF Scorecard
Quality Checks
Dependency Review
CodeQL
JavaScript Testing
Translation Validation
Release
OpenSSF Best Practices
License
ISMS
ISO 27001
NIST CSF
CIS Controls
Ask DeepWiki


๐ŸŽฏ Mission

Strengthen Swedish democracy through systematic transparency.

Riksdagsmonitor exists to put rigorous, evidence-based political intelligence in the hands of every citizen, journalist, researcher and policymaker. We combine:

  • ๐Ÿ•ต๏ธ Structured intelligence tradecraft โ€” ACH, SWOT, PESTLE, STRIDE, political-risk scoring, OSINT/INTOP methodology, ICD-203 Key Judgments
  • ๐Ÿ” Democratic transparency โ€” every claim traceable to a primary source (dok_id, vote count, named MP, government document) or it does not get published
  • ๐Ÿค– AI-generated political news โ€” a fully autonomous newsroom turning open data into 14-language analysis articles, daily
  • ๐Ÿ“Š 50+ years of historical evidence โ€” 1971โ€“2024 voting records, document corpus, and party-evolution analytics from the Citizen Intelligence Agency (CIA) platform
  • โš–๏ธ Neutrality & GDPR by design โ€” equal treatment of all 8 parliamentary parties, public-data only, privacy-by-design architecture, explicit democratic safeguards

The platform is non-partisan, open-source (Apache-2.0), and operated under the Hack23 ISMS with full ISO 27001:2022 / NIST CSF 2.0 / CIS Controls v8.1 alignment. It does not collect user data, does not run ads, does not push narratives, and is architecturally designed so it cannot be weaponised for partisan influence.


๐ŸŒ Explore the Platform

Five flagship pages anchor the public site. Each is multilingual (14 languages), WCAG 2.1 AA accessible, SEO-optimised with JSON-LD structured data and hreflang alternates, and CSP-hardened with Subresource Integrity (SRI) on every CDN asset.

IconPageWhat it does
๐ŸŒ Live Platform โ€” riksdagsmonitor.com The public homepage and primary entry point. Front-loads the current coalition status (e.g. Tidรถ Agreement โ€” 176/349 seats, fragility indicators, CIA risk alerts), then deep-dives into the full intelligence stack:
  • ๐Ÿ—ณ๏ธ Election-cycle intelligence โ€” 40 years (1994โ€“2034)
  • ๐Ÿ›๏ธ Party performance & effectiveness โ€” 1990โ€“2026, 8 parties
  • ๐Ÿค Committee networks & productivity โ€” 15 committees
  • ๐Ÿ“Š Coalition & voting-pattern analysis
  • ๐ŸŒก๏ธ Seasonal activity with Z-score anomaly detection โ€” 2002โ€“2025
  • ๐Ÿ”ฎ Pre-election monitoring
  • ๐ŸŽ–๏ธ Ministry risk & influence
  • ๐Ÿšจ 45-rule ร— 349-MP risk heat map (live)
Updated daily at 03:00 CET.
๐Ÿ•ต๏ธ Political Intelligence Index The single canonical entry point for OSINT/INTOP researchers. Catalogues every methodology that governs analysis on the platform:
  • ๐Ÿ“ AI-Driven Analysis Guide
  • ๐Ÿ” OSINT Tradecraft Standards
  • โš ๏ธ Political Risk Methodology
  • ๐Ÿ’ผ Political SWOT Framework
  • ๐ŸŽฏ Political Threat Framework
  • ๐Ÿท๏ธ Political Classification Guide
  • ๐Ÿ—ณ๏ธ Electoral Domain Methodology
  • ๐Ÿงฌ Synthesis Methodology
  • ๐Ÿ“ˆ IMF & ๐ŸŒ World Bank Indicator Mappings
  • ๐Ÿ“ Reference-Quality Thresholds ยท โœ๏ธ Political Style Guide
Plus the full daily artifact catalogue (Family A baseline ยท Family B ยท Family C synthesis ยท Family D extension). Each item links straight to the source-of-truth on GitHub. Available in 14 languages (append _sv, _de, _ar, โ€ฆ).
๐Ÿ“ฐ AI-Generated News & Analysis The world's first fully AI-driven political-intelligence newsroom for parliamentary monitoring. 11 specialised agentic workflows (10 scheduled + 1 on-demand, powered by Claude Opus via GitHub Copilot Coding Agent) autonomously produce daily intelligence articles:
  • ๐ŸŒ… Committee reports ยท ๐Ÿ›๏ธ propositions ยท โœŠ motions ยท โ“ interpellations
  • ๐Ÿ”ฎ Week-ahead ยท ๐Ÿ“… month-ahead ยท ๐Ÿ” real-time monitor
  • ๐ŸŒ† Evening analysis ยท ๐Ÿ“Š weekly review ยท ๐Ÿ“ˆ monthly review
Source verification, multi-party balance and GDPR-compliant OSINT methodology baked in. Every article carries machine-readable provenance through JSON-LD NewsArticle.isBasedOn, links back to the analysis artifacts that produced it, and is published in 14 languages.
๐Ÿ“Š CIA Intelligence Dashboard Interactive Chart.js / D3.js intelligence dashboard powered by the Citizen Intelligence Agency (CIA) data products:
  • ๐Ÿ“‹ Overview metrics โ€” MPs, parties, risk rules, coalition seats
  • ๐Ÿšจ Risk alerts โ€” Critical / Major / Minor (last 90 days)
  • ๐Ÿ›๏ธ Party performance analysis
  • ๐Ÿ—ณ๏ธ Swedish Election 2026 predictions โ€” coalition scenarios & key factors
  • ๐Ÿ‘ฅ Top-10 most influential MPs โ€” network analysis
  • ๐Ÿ”ฅ Voting-patterns heat map
  • ๐Ÿค Committee network analysis
  • ๐ŸŽ–๏ธ Ministry performance
  • ๐Ÿ“Š Parliamentary demographics ยท ๐Ÿ“„ document activity ยท ๐Ÿ“‰ risk-score evolution
Local-first data loading with 1-hour cache, keyboard navigable, CSP-compliant.
๐Ÿ—บ๏ธ Sitemap (Human + Machine) Human-readable navigation of every page on the platform plus the machine-readable sitemap.xml and rss.xml feeds. Daily refreshed; honours robots.txt and search-engine indexing best practices.

๐ŸŒ 14 supported languages: English ยท Swedish ยท Danish ยท Norwegian ยท Finnish ยท German ยท French ยท Spanish ยท Dutch ยท Arabic (RTL) ยท Hebrew (RTL) ยท Japanese ยท Korean ยท Chinese.


๐Ÿค– AI-Generated Political Intelligence News

"While traditional newsrooms debate whether AI will replace journalists, Riksdagsmonitor already runs a fully autonomous political-intelligence newsroom โ€” 14 agentic workflows, 14 languages, zero human editors, and a publication schedule that would bankrupt any legacy outlet trying to keep up."

What makes it different

Traditional AI-generated news is shallow โ€” it rewrites press releases. Riksdagsmonitor's pipeline performs deep political-intelligence analysis before a single sentence of an article is written:

  • ๐Ÿ”Ž Source verification โ€” every claim traced to official Riksdag/Regering data via the riksdag-regering MCP server (32+ tools)
  • โš–๏ธ Multi-party balance โ€” algorithmic fairness across all 8 parliamentary parties, no editorial bias possible
  • ๐Ÿ“Š Quantitative rigor โ€” voting cohesion metrics, attendance scoring, legislative productivity indices, ICD-203 Key Judgments, 45-rule transparency scoring
  • ๐ŸŒ 14-language reach โ€” culturally adapted political analysis with RTL support (Arabic / Hebrew), not machine translation
  • ๐Ÿ›ก๏ธ GDPR-compliant OSINT โ€” only public parliamentary data; political opinions are processed under GDPR Art. 9(2)(e) (manifestly made public) / 9(2)(g) (substantial public interest)
  • ๐Ÿ”ญ Forward-look coverage โ€” week / month / quarter / year / election-cycle horizons with registry-driven horizon stratification (see analysis/article-types.json)
  • ๐Ÿšฆ Hard analysis gate โ€” every news workflow MUST produce 9 (single-type) or 14 (Tier-C) analysis artifacts on disk before article generation; the gate at .github/prompts/05-analysis-gate.md is non-negotiable
  • ๐Ÿงช Quality gates โ€” HTMLHint validation, link checking, accessibility (WCAG 2.1 AA) and translation parity in CI before publication

End-to-end pipeline

flowchart LR
  A[๐Ÿ“ฅ MCP + CIA + SCB + IMF<br/>data download] --> B[๐Ÿ“ Apply methodology<br/>analysis/methodologies]
  B --> C[๐Ÿ“‹ Populate templates<br/>analysis/templates]
  C --> D[๐Ÿ“‚ Write 9 or 14 artifacts<br/>analysis/daily/$DATE/$SUBFOLDER]
  D --> E{๐Ÿšฆ Analysis Gate<br/>prompts/05}
  E -- pass --> F[๐Ÿ“ฐ Aggregate โ†’ article.md<br/>scripts/aggregate-analysis.ts]
  E -- fail --> C
  F --> G[๐ŸŒ Sanitised HTML<br/>scripts/render-articles.ts]
  G --> H[๐ŸŒ Translate into<br/>12 other languages]
  H --> I[๐Ÿ”€ One PR per article type<br/>S3 + CloudFront deploy]
  style A fill:#0a0e27,stroke:#00d9ff,color:#e0e0e0
  style E fill:#dc3545,stroke:#b02a37,color:#fff
  style I fill:#1a1e3d,stroke:#ffbe0b,color:#e0e0e0

A new .md artifact written anywhere under analysis/daily/$DATE/$SUB/ is enough to publish an English + Swedish HTML article on the next CI build โ€” there is no manual scaffolding, no template fill-in, and no per-type generator class. The dedicated news-translate workflow then propagates to the remaining 12 languages out-of-band. See Article-Generation.md for the full agentic-workflow contract.

Autonomous publication schedule

Time (UTC) Workflow Coverage Frequency
๐ŸŒ… 04:00 Committee Reports Utskottsbetรคnkanden analysis, voting breakdowns Monโ€“Fri
๐ŸŒ… 05:00 Propositions Government bills, legislative impact assessment Monโ€“Fri
โ˜€๏ธ 06:00 Motions Opposition proposals, party-strategy decoding Monโ€“Fri
โ“ 07:00 Interpellations Ministerial accountability, evasion detection Monโ€“Fri
๐Ÿ”ฎ 07:00 Week Ahead Parliamentary calendar preview, agenda intelligence Friday
๐Ÿ“… 08:00 Month Ahead Strategic outlook, coalition forecasting 1st of month
๐Ÿ” 10:00 & 14:00 (Monโ€“Fri); 12:00 (Sat/Sun) Real-Time Monitor Breaking political developments, flash analysis Monโ€“Fri (ร—2) + weekends
๐ŸŒ 11:00 & 17:00 (Monโ€“Fri); 14:00 (Sat/Sun) Translate 12 additional languages from EN/SV cores Daily
๐ŸŒ† 18:00 (16:00 Sat) Evening Analysis Deep-dive intelligence synthesis Monโ€“Sat
๐Ÿ“Š 09:00 Weekly Review Week-in-review scorecard, party performance Saturday
๐Ÿ“ˆ 10:00 Monthly Review Comprehensive monthly intelligence assessment 28th of month

Authoritative schedules defined in .github/workflows/news-*.lock.yml โ€” see .github/workflows/README.md for the complete inventory.

Result: dozens of articles per week across 14 languages โ€” hundreds of localised intelligence products each month, generated autonomously with zero editorial intervention, every one of them auditable down to its source dok_id.


๐Ÿ•ต๏ธ Political Intelligence Methodology

Every analysis on the platform is governed by an explicit, version-controlled methodology. The full library is browseable at https://riksdagsmonitor.com/political-intelligence.html; the canonical sources live in analysis/.

Layer Document What you'll find
๐Ÿงญ Framework analysis/README.md Artifact taxonomy, 9-artifact / 14-artifact contract, on-disk daily layout
๐Ÿ“ Methodology library analysis/methodologies/README.md 11 methodology documents โ€” AI-Driven Analysis Guide ยท OSINT Tradecraft Standards ยท Political Risk Methodology ยท Political SWOT Framework ยท Political Threat Framework ยท Political Classification Guide ยท Electoral Domain Methodology ยท Synthesis Methodology ยท Per-Document & Per-Artifact Methodologies ยท Strategic Extensions (scenario / wildcard / long-horizon) ยท Structural Metadata ยท Political Style Guide
๐Ÿ“‹ Template library analysis/templates/README.md 23 templates โ€” 8 core single-type (T1โ€“T8) plus 15 extended / Tier-C (executive-brief, scenario-analysis, coalition-mathematics, election-2026, historical-parallels, comparative-international, devil's-advocate, intel-assessment / ICD-203 Key Judgments, โ€ฆ)
๐Ÿšฆ News-generation contract .github/prompts/README.md 8 bounded-context prompt modules + Tier-C extension; the single blocking analysis gate
โš™๏ธ Workflow orchestration .github/workflows/README.md + WORKFLOWS.md How each news-*.md source compiles to a hardened .lock.yml with SHA-pinned actions, egress firewall (Squid + iptables) and five-layer safe-outputs
๐Ÿ” IMF integration analysis/imf/README.md + .github/aw/ECONOMIC_DATA_CONTRACT.md Macro/fiscal/monetary/external context with T+5 projections; canonical pattern for every economic claim
๐Ÿ›๏ธ Statskontoret integration analysis/statskontoret/README.md Swedish agency structure and central-government budget execution (รฅrsutfall / mรฅnadsutfall / tidsserier)
๐Ÿค– Specialist personas .github/agents/README.md 14 persona agents incl. intelligence-operative, news-journalist, content-generator + 9 workflow-specialist agents + shared developer.instructions.md
๐Ÿง  Skills library .github/skills/README.md 91 skills across 12 functional categories โ€” 11 political-intelligence, 5 journalism, 14 ISMS/security, 13 GitHub Agentic Workflows, โ€ฆ

Evidence standard

Every claim must tie to: a dok_id citation, a named actor, a vote count, or a primary-source URL. Generic statements without evidence are rejected by the analysis gate. AI is an accelerator โ€” never an excuse for shallow output.

AI-FIRST quality principle

Minimum 2 complete iterations for every analysis. Pass 1 produces the artifact; Pass 2 reads everything back and improves every section (stronger evidence, deeper analytic rigor, broader stakeholder coverage, quantified risk). Workflows that complete in under 75 % of their allocated time are treated as failed. See AGENTS.md ยงAI-FIRST.


๐Ÿ“Š Interactive Intelligence Dashboards

Five flagship Chart.js / D3.js dashboards on https://riksdagsmonitor.com/ (and the consolidated CIA Intelligence Dashboard):

# Dashboard Coverage Visualisations Data
1 ๐ŸŒก๏ธ Seasonal Activity Patterns 2002โ€“2025 quarterly (23+ years) Heat maps, time series, Z-score anomaly detection (|Z| โ‰ฅ 2.0) cia-data/seasonal/
2 ๐Ÿ‘ค Politician Dashboard 349 current MPs Top-10 rankings, 45-rule risk profiles, influence metrics cia-data/politician/
3 ๐Ÿ—ณ๏ธ Pre-Election Monitoring Q4 2023 โ†’ 2025 Historical comparisons, election-year vs non-election Q4 patterns, early-warning indicator matrix cia-data/pre-election/
4 ๐Ÿ›๏ธ Party Performance & Effectiveness 1990โ€“2026 (37 years, 8 parties) Effectiveness trends, comparative bars, coalition-alignment, momentum with P50/P90 percentiles cia-data/party/
5 ๐Ÿšจ Anomaly Detection & Early Warning 2002โ€“2026 (41 quarters) Timeline ยท Z-score distribution ยท type breakdown ยท severity heat map ยท recent-anomaly feed cia-data/seasonal/

Dashboard properties โ€” local-first data loading with 1-hour cache; WCAG 2.1 AA accessible (keyboard, screen reader, 4.5:1 contrast); 14-language; responsive 320 px โ†’ 1440 px+; CSP-compliant with SRI hashes (sha384) on all CDN resources.


๐Ÿ—ณ๏ธ Transparency Statistics

Live numbers (updated daily at 03:00 CET via update-cia-csv-data.yml):

Metric Value Note
๐Ÿ‘ฅ Current MPs 349 All active Members of Parliament
๐Ÿ“œ Historical politicians 2,494 1971โ€“2024 (50+ years)
๐Ÿ—ณ๏ธ Votes analysed 3.5+ million Comprehensive voting-record corpus
๐Ÿ“„ Documents processed 109,000+ Parliamentary documents (motions, propositions, interpellations, โ€ฆ)
๐Ÿ›๏ธ Committee documents 8,740 Committee work tracked
โš ๏ธ Rule violations identified 2,308 Across 45 transparency rules
๐Ÿ‡ธ๐Ÿ‡ช Political parties 8 All Riksdag-represented parties
โฑ๏ธ CIA subsystems 15 anomaly ยท coalition ยท committee ยท distribution ยท election ยท election-cycle ยท ministry ยท parties ยท party ยท percentile ยท politician ยท pre-election ยท risk ยท seasonal ยท voting
๐Ÿ“ฐ News articles published 2,669+ files under news/ 14 languages

Data source: extraction_summary_report.csv ยท cached in cia-data/production-stats.json (24 h freshness).


๐Ÿ”— Authoritative Data Sources

Riksdagsmonitor uses a provider-tiered data architecture, with each provider chosen for its area of strength.

Tier Provider Scope Access
๐Ÿ›๏ธ Parliamentary primary Riksdagen Open Data Documents, motions, votes, MPs, speeches, committees riksdag-regering MCP server (32+ tools)
๐Ÿข Government primary Regeringskansliet Propositions, SOU, Ds, directives, press releases riksdag-regering MCP server
๐Ÿ“ˆ Primary economic IMF (Datamapper REST + SDMX 3.0) GDP, growth, unemployment, inflation, fiscal balance, debt, current account, bilateral trade, commodity prices, exchange rates, government spending by COFOG function โ€” with T+5 projections Pure-TypeScript client scripts/imf-client.ts (intentionally non-MCP)
๐Ÿ‡ธ๐Ÿ‡ช Swedish ground truth SCB (PxWeb v2) Swedish monthly labour (AKU), monthly inflation (KPI), regional/municipal, budget execution scb MCP server (@jarib/[email protected], 1,200+ tables)
๐Ÿ›๏ธ Statskontoret Statskontoret Authority count, dept grouping, leadership form, FTE / headcount, central-government budget outturns scripts/statskontoret-client.ts
๐ŸŒ Non-economic residue World Bank Governance (WGI, source=75), environment, social/education residue, defence historicals world-bank MCP server ([email protected])
๐Ÿ—ณ๏ธ Election authority Valmyndigheten Election results, voter turnout, electoral statistics Public datasets
๐Ÿ’ฐ ESV Ekonomistyrningsverket Government budget and spending data Public datasets
๐Ÿ•ต๏ธ Citizen Intelligence Agency Hack23/cia 15 CIA subsystems consumed nightly via update-cia-csv-data.yml JSON / CSV exports

Why this split โ€” IMF uses uniform SNA 2008 / GFSM 2014 / BPM6 methodology across countries (essential for cross-country comparison), publishes T+5 projections (essential for look-ahead workflows), and has fresher data than World Bank's economic indicators. World Bank remains canonical for the classes IMF does not publish (WGI governance, environment). SCB is the Swedish-specific ground-truth layer. Banned phrases (e.g. "the World Bank reports Swedish GDP growth of โ€ฆ") and vintage discipline (data > 6 months old โ†’ annotation required) are enforced by CI per .github/aw/ECONOMIC_DATA_CONTRACT.md v2.1.


๐Ÿ—๏ธ Technical Architecture

Full system architecture (C4 Context / Container / Component / Dynamic views) lives in ARCHITECTURE.md (v2.2).

Stack

  • Frontend โ€” Static HTML5 / CSS3 with TypeScript-built Chart.js / D3.js dashboards (no SPA framework, mobile-first, cyberpunk theme)
  • Build โ€” Vite 8 (ES modules, code splitting, SRI via vite-plugin-sri-gen)
  • Visualisation โ€” Chart.js 4 + D3.js 7, hosted locally on CloudFront
  • Testing โ€” Vitest 4 (2,890 unit tests, 100 % pass rate, 70 % line coverage) + Cypress 15 (E2E)
  • Hosting โ€” AWS CloudFront + S3 dual-region (us-east-1 primary, eu-west-1 replica) via OIDC; GitHub Pages as DR fallback
  • CI/CD โ€” 50 GitHub Actions workflow files (22 standard .yml + 14 agentic .md sources + 14 compiled .lock.yml); SHA-pinned, step-security/harden-runner everywhere
  • Data Platform โ€” Citizen Intelligence Agency (CIA) Java/Spring Boot backend + 15 CIA subsystems
  • Runtime โ€” Node.js 26.x

Architecture documentation portfolio

Current State Future State
๐Ÿ—๏ธ Architecture ๐Ÿš€ Future Architecture
๐Ÿ“Š Data Model ๐Ÿ“Š Future Data Model
๐Ÿ”„ Flowcharts ๐Ÿ”„ Future Flowcharts
๐Ÿ”„ State Diagrams ๐Ÿ”„ Future State Diagrams
๐Ÿ—บ๏ธ Mindmap ๐Ÿ—บ๏ธ Future Mindmap
๐Ÿ’ผ SWOT ๐Ÿ’ผ Future SWOT

๐Ÿ” Security, Privacy & ISMS Compliance

Full controls in SECURITY_ARCHITECTURE.md ยท threat model in THREAT_MODEL.md ยท CRA conformity in CRA-ASSESSMENT.md.

Classification (per Hack23 Classification Framework)

Dimension Level Note
๐Ÿ”’ Confidentiality ๐ŸŸข Public All data intentionally disclosed (Swedish open data + website content)
โœ… Integrity ๐ŸŸ  High Automated validation, GPG-signed commits, SLSA build provenance
๐ŸŸข Availability ๐ŸŸ  High 99.998 % design target (CloudFront 99.9 % SLA + multi-region S3 + GitHub Pages DR)
๐Ÿท๏ธ Privacy ๐ŸŸ  Personal (public officials only) GDPR Art. 6(1)(e/f); Art. 9(2)(e/g) for political opinions; no end-user PII, no accounts, no ads, no tracking
โฑ๏ธ RTO / RPO 1โ€“4 h / 4โ€“24 h Automated multi-region failover, daily data refresh
๐Ÿ’ฐ Business impact ๐ŸŸข Low (financial) ยท ๐ŸŸก Moderate (reputational) Open-source project, no revenue dependency

Compliance frameworks

  • ISO 27001:2022 โ€” 7 Annex A controls implemented ยท NIST CSF 2.0 โ€” 6 functions aligned ยท CIS Controls v8.1 โ€” 6 controls implemented
  • GDPR โ€” public-interest / legitimate-interest grounds for public-official data; political opinions under Art. 9(2)(e)/(g)
  • EU CRA โ€” self-assessment in CRA-ASSESSMENT.md
  • OpenSSF Best Practices โ€” Project #12069

Defence-in-depth highlights

Metric Status
Risk level ๐ŸŸข LOW (5.52 / 10.0 โ€” 99.7 % risk reduction)
HTML validation โœ… 0 errors (HTMLHint)
Dependencies โœ… Dependabot clean
Secrets โœ… Secret Scanning enabled
Code scanning โœ… CodeQL active

๐Ÿ“ฆ npm Package

The platform's reusable shared utilities are published as riksdagsmonitor with SLSA build provenance.

npm install riksdagsmonitor

Includes โ€” Theme System (cyberpunk, WCAG AA) ยท Chart Factory (Chart.js with responsive breakpoints + keyboard nav) ยท Resilient Data Loader (retry, cache, CSV/JSON) ยท DOM utilities ยท Full TypeScript types ยท 12 dashboard modules ยท CIA intelligence modules.

import { getActiveThemeColors, BREAKPOINTS, getPartyColor } from 'riksdagsmonitor';
import { loadJSON, loadCSV, createDataSource } from 'riksdagsmonitor';
import { showLoadingState, formatNumber, debounce } from 'riksdagsmonitor';
import { createChart, initDashboardSection } from 'riksdagsmonitor/shared/chart-factory';
import { CIADataLoader } from 'riksdagsmonitor/cia/data-loader';
import { CIADashboardRenderer } from 'riksdagsmonitor/cia/visualizations';

Peer dependencies โ€” chart.js d3 papaparse (required for dashboards); chartjs-plugin-annotation (optional, loaded conditionally).


๐Ÿš€ Development

Prerequisites

Node.js โ‰ฅ 26 ยท npm โ‰ฅ 10 ยท Git with GPG signing ยท GitHub MFA + SSH keys.

Quick start

git clone [email protected]:Hack23/riksdagsmonitor.git
cd riksdagsmonitor
npm install
npm run dev          # Vite dev server with hot reload โ†’ http://localhost:8080

# Tests
npm test                 # Vitest unit (2,890 tests)
npm run test:coverage    # with coverage
npm run cypress:open     # E2E interactive
npm run e2e              # full E2E (build + preview + Cypress)

# Quality
npm run htmlhint         # HTML5 validation
npm run linkcheck        # link integrity (linkinator)

# Production
npm run build            # Vite production build โ†’ dist/
npm run preview          # http://localhost:4173

CI/CD

  • HTMLHint validation ยท Linkinator ยท Vitest (2,890 tests) ยท Cypress ยท Vite build ยท Dependency review ยท CodeQL ยท Secret scanning ยท Translation validation
  • Releases โ€” workflow_dispatch or v*.*.* tag โ†’ SBOM (SPDX) + SHA-256 + SLSA Build Provenance attestations + dual deployment (S3/CloudFront primary, GitHub Pages DR)
  • gh attestation verify riksdagsmonitor-vX.Y.Z.zip -R Hack23/riksdagsmonitor

See WORKFLOWS.md and RELEASE_PROCESS.md for the canonical reference.


๐Ÿค– GitHub Copilot โ€” Agents, Skills & Agentic Workflows

Riksdagsmonitor uses GitHub Copilot personas, skills and agentic workflows as first-class automation. Directory READMEs are the single source of truth; AGENTS.md and SKILLS.md are the long-form catalogs.

Surface Catalog Count
๐Ÿค– Custom agents .github/agents/README.md 24 files (14 personas + 9 workflow-specialists + 1 shared developer-instructions)
๐Ÿง  Skills .github/skills/README.md 91 skills across 12 functional categories
๐Ÿ“œ Prompt modules .github/prompts/README.md 8 bounded-context modules + Tier-C extension
โš™๏ธ Workflows .github/workflows/README.md 50 files (22 standard + 14 agentic sources + 14 compiled)
๐Ÿ”Œ MCP servers .github/copilot-mcp.json 8 โ€” riksdag-regering, scb, world-bank, github (insiders), filesystem, memory, sequential-thinking, playwright

14 persona agents (assignable via assign_copilot_to_issue):
security-architect ยท documentation-architect ยท quality-engineer ยท frontend-specialist ยท isms-compliance-manager ยท deployment-specialist ยท devops-engineer ยท intelligence-operative ยท news-journalist ยท content-generator ยท data-pipeline-specialist ยท data-visualization-specialist ยท task-agent ยท ui-enhancement-specialist.

9 workflow-specialist agents (.agent.md, invoked from workflows):
agentic-workflows ยท ci-cleaner ยท contribution-checker ยท create-safe-output-type ยท custom-engine-implementation ยท grumpy-reviewer ยท interactive-agent-designer ยท technical-doc-writer ยท w3c-specification-writer.


๐Ÿ“– Documentation Index

Project documentation

Future planning

External


๐Ÿ”ฎ Future Roadmap (2026 โ†’ 2037)

From agentic news generation to AGI-powered democratic intelligence โ€” an 11-year evolution.

Detailed planning: FUTURE_WORKFLOWS.md ยท FUTURE_MINDMAP.md ยท FUTURE_ARCHITECTURE.md

%%{init: {"theme": "dark", "themeVariables": {"primaryColor": "#00d9ff", "primaryTextColor": "#e0e0e0", "primaryBorderColor": "#ff006e", "lineColor": "#ffbe0b", "secondaryColor": "#1a1e3d", "tertiaryColor": "#0a0e27"}}}%%
timeline
    title Riksdagsmonitor Evolution โ€” 2026 โ†’ 2037
    section Phase 3 โ€” Foundation (2026)
        Q1-Q2 : โœ… TypeScript migration ยท 14 agentic news workflows
              : โœ… 14 languages ยท S3 + GitHub Pages dual deploy
        Q3-Q4 : ๐Ÿ”„ CIA pipeline integration ยท predictive dashboards
    section Phase 4 โ€” Predictive Intelligence (2027โ€“2029)
        2027 : Real-time streams ยท ML election models ยท Nordic expansion (DK ยท NO ยท FI)
        2028 : Multi-modal (audio/video) ยท AI editorial board ยท self-healing pipelines
        2029 : Fully autonomous ยท expert-level analysis ยท API platform launch
    section Phase 5 โ€” Scale (2030โ€“2033)
        2030-2031 : EU-wide coverage (27 + EP) ยท sovereign-AI evaluation
        2032-2033 : Global parliamentary watch (100+ democracies) ยท every UN language ยท pre-AGI
    section Phase 6 โ€” AGI Era (2034โ€“2037)
        2034-2035 : AGI-enhanced intelligence ยท 195 parliaments ยท predictive governance
        2036-2037 : Transformative democracy platform ยท democratic safeguards architecture
Year Automation assets AI model Key capability
2026 44 โ†’ 50 Opus 4.7โ€“4.9 ๐Ÿค– Agentic news generation (current)
2027 50โ€“55 Opus 5.x ๐Ÿ”ฎ Predictive analytics & Nordic expansion
2028 55โ€“65 Opus 6.x ๐ŸŽ™๏ธ Multi-modal content
2029 65โ€“75 Opus 7.x ๐Ÿš€ Fully autonomous pipeline
2030โ€“2033 75โ€“100 Opus 8โ€“10.x / pre-AGI ๐ŸŒ EU โ†’ Global coverage
2034โ€“2037 100โ€“120+ AGI / post-AGI โšก Transformative democracy platform

Version numbers are illustrative โ€” actual products and paradigm shifts (quantum AI, neuromorphic computing) will vary. Architecture is designed for graceful adaptation while preserving democratic safeguards: human oversight maintained regardless of AI capability, anti-weaponisation by design, constitutional alignment encoded in platform architecture.


๐Ÿค Contributing

Contributions welcome under Hack23's secure-development standards.

  1. Fork the repository and create a descriptive feature branch
  2. GPG-sign every commit ยท enable MFA on your GitHub account
  3. Run quality checks locally (npm run htmlhint && npm test && npm run build)
  4. Submit a pull request with comprehensive description; address review feedback
  5. Never introduce security vulnerabilities; follow CONTRIBUTING.md and CODE_OF_CONDUCT.md

๐Ÿข About Hack23

Hack23 AB (Org.nr 559534-7807) โ€” Swedish cybersecurity and open-source intelligence consultancy.


๐Ÿ“œ License

Copyright ยฉ 2008โ€“2026 Hack23 AB (Org.nr 559534-7807). Licensed under the Apache License 2.0 โ€” see LICENSE.


๐Ÿ—ณ๏ธ Empower citizens ยท ๐Ÿ” Strengthen democratic accountability ยท ๐Ÿ•ต๏ธ Illuminate the political process