Alle repos under NORSAIN-AI bør referere til dette repoet for felles policy, workflows og Copilot-governance.
.github-repoet har følgende hovedformål:
- Standardisere pull request-prosesser, etiketter og kvalitetskrav.
- Tilby gjenbrukbare GitHub Actions-workflows for NORSAIN-AI-prosjekter.
- Samle og forvalte felles bidrags- og kodestandarder.
- Kontrollere og dokumentere Copilot-oppførsel (patch/diff-only, ingen automatiske commits).
- Forvalte felles maler for:
- agenter (
*.agent.md) - instructions (
*.instructions.md) - oppgaveprompter (
*.prompt.md) - repo-spesifikke Copilot-instruksjoner.
- agenter (
Repoet skal betraktes som en plattformkomponent: endringer her påvirker flere prosjekter og krever tilsvarende kvalitet og governance.
| Kategori | Fil / mappe | Beskrivelse |
|---|---|---|
| Workflows | .github/workflows/ci-reusable.yml |
Gjenbrukbar CI-workflow som kan kalles fra andre repos via workflow_call. |
.github/workflows/pr-checks.yml |
Referanse-workflow som demonstrerer bruk av ci-reusable.yml. |
|
.github/workflows/security-sast.yml |
Reusable Semgrep SAST-workflow (Platform-tilkoblet med graceful OSS-fallback og Reviewdog inline PR-kommentarer). | |
.github/workflows/security-secrets.yml |
Reusable secrets-scanning workflow (Gitleaks per PR + TruffleHog ukentlig deep sweep med issue-opprettelse). | |
| Issue templates | .github/ISSUE_TEMPLATE/bug_report.yml |
Standardmal for feilrapportering med auto-labels. |
.github/ISSUE_TEMPLATE/feature_request.yml |
Mal for feature requests. | |
.github/ISSUE_TEMPLATE/config.yml |
Konfigurasjon som styrer tilgjengelige issue-typer og peker brukere til riktige maler. | |
| PR-mal | PULL_REQUEST_TEMPLATE.md |
Standard PR-mal med typevalg, sjekkliste og krav til dokumentasjon og tester. |
| Copilot-governance | copilot-instructions.md |
Organisasjonsomfattende Copilot-regler og retningslinjer for AI-assistert utvikling. |
| Contributing | CONTRIBUTING.md |
Bidragsguide for NORSAIN-AI, inkludert kodestandarder og commit-konvensjoner. |
| LLM-templates | llm/agents/*.agent.template.md |
Maler for repo-spesifikke agenter under .github/agents/ (ekspertprofiler og roller). |
llm/instructions/*.instructions.template.md |
Maler for globale, områdespesifikke og agent-bundne instrukser under .github/instructions/. |
|
llm/prompts/*.prompt.template.md |
Maler for oppgaveprompter under .github/prompts/ som knyttes til definerte agenter. |
|
llm/copilot/copilot-instructions.template.md |
Mal for repo-spesifikke Copilot-instruksjoner (.github/copilot-instructions.md i hvert repo). |
|
llm/meta/*.md |
Felles retningslinjer for navnekonvensjoner, bruk og struktur av LLM-relaterte .github-filer. | |
| Lisens | LICENSE |
Gjeldende lisens for NORSAIN-AI/.github og relaterte artefakter. |
(LLM-mappene kan introduseres og utvides gradvis; README er den autoritative oversikten over hva som til enhver tid er i bruk.)
Prosjekt-repos under NORSAIN-AI skal:
- Konfigurere sine CI-workflows til å kalle
ci-reusable.ymlviaworkflow_call. - Bruke de sentrale PR- og issue-malene ved å følge GitHub sin standardoppsett for
.github/ISSUE_TEMPLATEogPULL_REQUEST_TEMPLATE.md. - Følge retningslinjene i
CONTRIBUTING.mdfor commit-format, kodekvalitet og PR-prosess. - Respektere Copilot-policyen definert i
copilot-instructions.md. - For LLM/agent-oppsett:
- Basere
.github/agents/*.agent.mdpå malene illm/agents/. - Basere
.github/instructions/*.instructions.mdpå malene illm/instructions/. - Basere
.github/prompts/*.prompt.mdpå malene illm/prompts/. - Opprette repo-spesifikke
copilot-instructions.mdbasert pållm/copilot/copilot-instructions.template.md.
- Basere
Detaljer om konkret konfigurering av workflows og LLM-templates ligger i hvert enkelt prosjekt-repo, men alle skal peke tilbake til dette repoet som kilden for policy, maler og gjenbrukbare komponenter.
Reusable security workflows in .github/workflows/ provide a shared baseline
for SAST and secrets scanning across all NORSAIN-AI repos. Callers must use
secrets: inherit so org-level secrets (e.g. SEMGREP_APP_TOKEN) reach the
reusable workflow context.
security-sast.yml— Semgrep SAST with Platform-connected mode whenSEMGREP_APP_TOKENis present (orgnorsain_com, native PR comments, dashboard), gracefully falling back to OSSsemgrep scanwith Reviewdog inline PR comments. Fails on findings at or abovefail-severity(defaultERROR). Uploadssemgrep.jsonas a workflow artifact.security-secrets.yml— Gitleaks on every PR/push (uses repo-root.gitleaks.toml, posts PR comment, fails on find) plus a weekly TruffleHog deep sweep (Monday 06:00 UTC,--only-verified) that opens a tracked GitHub issue on verified findings. Also runnable viaworkflow_dispatch.
After this repo is tagged v1, callers wire in the reusable workflows:
name: Security
on:
pull_request:
push:
branches: [main]
jobs:
sast:
uses: NORSAIN-AI/.github/.github/workflows/security-sast.yml@v1
secrets: inherit
secrets-scan:
uses: NORSAIN-AI/.github/.github/workflows/security-secrets.yml@v1
secrets: inheritCopilot-styringen for NORSAIN-AI er definert i copilot-instructions.md og skal anses som autoritativ på organisasjonsnivå.
Repo-spesifikke copilot-instructions.md skal baseres på malen i llm/copilot/ og være i tråd med disse prinsippene.
Overordnede prinsipper:
- Copilot skal ikke opprette commits, pushe branches eller opprette/endre pull requests.
- Copilot skal kun foreslå patch/diff-baserte endringer, med forklaring og forslag til tester.
- Forslag skal begrenses til et kontrollert antall filer per endring.
- Alle forslag skal følge retningslinjene i
CONTRIBUTING.mdogPULL_REQUEST_TEMPLATE.md. - Kodeforslag skal være lesbare, typesikre der relevant og testbare.
- LLM-/agent-arbeidsflyt skal bruke definerte:
- agenter (
.github/agents/*.agent.md) - instructions (
.github/instructions/*.instructions.md) - prompts (
.github/prompts/*.prompt.md) og ikke introdusere ad-hoc roller eller policyer i enkeltfiler.
- agenter (
Detaljerte krav til omfang, begrensninger og forventet kvalitet beskrives i copilot-instructions.md og tilhørende LLM-templates.
Endringer i .github-repoet påvirker alle repos som bruker disse standardene. Følg derfor retningslinjene i CONTRIBUTING.md.
Overordnede prinsipper:
- Direkte push til
mainskal ikke benyttes; alle endringer gjøres via pull requests. - Endringer som berører workflows, Copilot-policy, PR- og issue-maler, LLM-templates eller
CONTRIBUTING.mdskal reviewes av definerte vedlikeholdere for.github-repoet. - Hver pull request skal tydelig beskrive:
- hva som er endret
- hvorfor endringen er nødvendig
- hvordan endringen påvirker andre repos som bruker disse artefaktene
Se LICENSE for gjeldende lisensvilkår.
© NORSAIN-AI, 2025.
Felles retningslinjer, LLM-templates og automasjon for konsistente DevOps- og AI-prosesser på tvers av organisasjonen.