Skip to content

Latest commit

 

History

History
62 lines (52 loc) · 5.63 KB

File metadata and controls

62 lines (52 loc) · 5.63 KB

GEMINI.md

AI guardrails for Google Gemini, generated from source annotations by VibeTags. The region between the VIBETAGS-START and VIBETAGS-END markers is regenerated on every compile; never hand-edit inside it. Per-element detail lives in , indexed from the block below.

AUTO-GENERATED AI RULES

Generated by VibeTags | https://github.com/PIsberg/vibetags

Do not edit manually.

🔒 PII / PRIVACY GUARDRAILS

The following elements handle Personally Identifiable Information (PII). NEVER include their runtime values in logs, console output, external API calls, test fixtures, mock data, or code suggestions.

  • se.deversity.skill3.llm.LocalLlmClient.apiKey: LLM provider API key — never log, echo, or include in errors/fixtures
  • se.deversity.skill3.pipeline.BraveSearchClient.apiKey: Brave Search subscription token — never log, echo, or include in errors/fixtures

🧠 CORE FUNCTIONALITY (CHANGE WITH EXTREME CAUTION)

The following elements are well-tested core components. Make changes with extreme caution.

  • se.deversity.skill3.llm.SkillMdPostProcessor: Sensitivity: High. Note: Deterministically guarantees SKILL.md spec compliance; model output is never trusted. Changes risk emitting invalid frontmatter — keep the parsing and frontmatter synthesis covered by SkillMdPostProcessorTest.
  • se.deversity.skill3.llm.Verifier: Sensitivity: High. Note: Accuracy gate that re-grounds claims against the sources. Only worthwhile with a capable model — a weak model rewrites rather than grounds. Keep the prompt strict about supported-claims-only and announced-vs-shipped.

🔐 SECURITY-CRITICAL CODE

The following elements are security-critical. AI must not weaken security properties. Any change must be reviewed for security impact.

  • se.deversity.skill3.llm.AnthropicChatModel: Security-critical code [Anthropic API credential handling and hosted-provider network egress]. Do not weaken security properties. Flag any change for security review.
  • se.deversity.skill3.llm.LlmProviderFactory: Security-critical code [LLM provider credential resolution and model selection]. Do not weaken security properties. Flag any change for security review.
  • se.deversity.skill3.llm.LocalLlmClient: Security-critical code [outbound LLM-provider credential (Bearer token) handling]. Do not weaken security properties. Flag any change for security review.
  • se.deversity.skill3.llm.NameSanitizer: Security-critical code [output sanitization: reserved-word stripping must never be weakened]. Do not weaken security properties. Flag any change for security review.
  • se.deversity.skill3.pipeline.BraveSearchClient: Security-critical code [external-API credential handling and the only network egress with a secret token]. Do not weaken security properties. Flag any change for security review.
  • se.deversity.skill3.pipeline.DiscoveryProvider: Security-critical code [forwards the Brave subscription token to the search client; must not log it]. Do not weaken security properties. Flag any change for security review.
  • se.deversity.skill3.pipeline.HttpPageFetcher: Security-critical code [outbound page fetch egress for partly-untrusted URLs; SSRF guard must not be weakened]. Do not weaken security properties. Flag any change for security review.

Scoped Rules Index

Detailed per-element guardrails live in scoped rule files that load automatically when you open the matching source file. Consult the referenced file before modifying an element:

  • se.deversity.skill3.llm.AnthropicChatModel → .gemini/rules/se-deversity-skill3-llm-AnthropicChatModel.md
  • se.deversity.skill3.llm.ChatModel → .gemini/rules/se-deversity-skill3-llm-ChatModel.md
  • se.deversity.skill3.llm.LlmProviderFactory → .gemini/rules/se-deversity-skill3-llm-LlmProviderFactory.md
  • se.deversity.skill3.llm.LocalLlmClient → .gemini/rules/se-deversity-skill3-llm-LocalLlmClient.md
  • se.deversity.skill3.llm.NameSanitizer → .gemini/rules/se-deversity-skill3-llm-NameSanitizer.md
  • se.deversity.skill3.llm.SkillMdPostProcessor → .gemini/rules/se-deversity-skill3-llm-SkillMdPostProcessor.md
  • se.deversity.skill3.llm.Verifier → .gemini/rules/se-deversity-skill3-llm-Verifier.md
  • se.deversity.skill3.model.ContextBundle → .gemini/rules/se-deversity-skill3-model-ContextBundle.md
  • se.deversity.skill3.model.RunManifest → .gemini/rules/se-deversity-skill3-model-RunManifest.md
  • se.deversity.skill3.model.Source → .gemini/rules/se-deversity-skill3-model-Source.md
  • se.deversity.skill3.pipeline.BraveSearchClient → .gemini/rules/se-deversity-skill3-pipeline-BraveSearchClient.md
  • se.deversity.skill3.pipeline.CutoffResolver → .gemini/rules/se-deversity-skill3-pipeline-CutoffResolver.md
  • se.deversity.skill3.pipeline.DiscoveryProvider → .gemini/rules/se-deversity-skill3-pipeline-DiscoveryProvider.md
  • se.deversity.skill3.pipeline.FileCorpus → .gemini/rules/se-deversity-skill3-pipeline-FileCorpus.md
  • se.deversity.skill3.pipeline.HttpPageFetcher → .gemini/rules/se-deversity-skill3-pipeline-HttpPageFetcher.md
  • se.deversity.skill3.pipeline.PageFetcher → .gemini/rules/se-deversity-skill3-pipeline-PageFetcher.md
  • se.deversity.skill3.pipeline.QueryPlanner → .gemini/rules/se-deversity-skill3-pipeline-QueryPlanner.md
  • se.deversity.skill3.pipeline.RetrievalService → .gemini/rules/se-deversity-skill3-pipeline-RetrievalService.md
  • se.deversity.skill3.pipeline.SearchClient → .gemini/rules/se-deversity-skill3-pipeline-SearchClient.md
  • se.deversity.skill3.skillspector.InputVetter → .gemini/rules/se-deversity-skill3-skillspector-InputVetter.md