{
  "markdown": "# Java Dev Assist Extension\n\n**Java Dev Assist** is an expert AI assistant extension for the Gemini CLI, specializing in **Java 17+**, **Quarkus**, and **Spring Boot** development. It assists developers with code reviews, debugging stack traces, managing dependencies, and enforcing architectural boundaries.\n\n## 🚀 Features\n\n*   **Stack Specialization**: Optimized for Modern Java (17+), Quarkus, and Spring Boot.\n*   **Context Awareness**: Automatically detects build systems (Maven/Gradle) and project frameworks to provide relevant suggestions.\n*   **Safety First**: Prioritizes non-destructive analysis and asks for confirmation before making changes.\n*   **Architectural Guardrails**: Includes specific tools to enforce domain boundaries (e.g., keeping DTOs out of Service layers).\n\n## 📦 Installation\n\nTo install this extension from the repository:\n\n```bash\ngemini extensions install https://github.com/grzegorz-golowicz/java-dev-assist-extension\n```\n\nTo install locally for development:\n\n```bash\ngemini extensions install .\n```\n\nTo update the extension after making changes:\n\n```bash\ngemini extensions uninstall java-dev-assist-extension && gemini extensions install .\n```\n\n## 🛠 Commands\n\n### `/java`\n**Description**: Displays the main help menu and index of available commands.\n**Usage**:\n```bash\n/java\n```\n\n### `/java:readme`\n**Description**: Creates or updates README.md for the analyzed Java project using either README.guidelines.md (if present) or the built-in defaults.\n**Usage**:\n```bash\n/java:readme\n```\n**Notes**:\n* Only AI-managed blocks wrapped by `<!-- AI:START -->` and `<!-- AI:END -->` are updated; manual content stays untouched.\n* Output follows a neutral, technical tone and defaults to a conservative structure when no guidelines file exists.\n\n### `/java:api:lint`\n**Description**: Lints the API contract for standards compliance and consistency. Supports OpenAPI (YAML/JSON) or Java controller/DTO analysis.\n**Usage**:\n```bash\n/java:api:lint\n```\n**Output**:\n*   Contract source and location.\n*   Standards violations (MUST-FIX/WARN).\n*   Consistency drift (Dominant conventions vs deviations).\n*   Recommended actions.\n\n### `/java:stacktrace`\n**Description**: Analyzes Java stack traces to identify root causes and propose concrete fixes.\n**Usage**:\n```bash\n/java:stacktrace <paste_your_stacktrace_here>\n```\n**Output**:\n*   Root cause analysis.\n*   Most likely failing component.\n*   Recommended immediate checks and fixes.\n\n### `/java:review`\n**Description**: Smart code review assistant. Analyzes `git diff` for logical risks, security vulnerabilities, regressions, and missing tests. It avoids style nitpicks to focus on high-value feedback.\n**Usage**:\n```bash\n# Review current unstaged changes\n/java:review\n\n# Review changes against the previous commit\n/java:review HEAD~1\n```\n**Output**:\n*   Risk assessment (High/Medium/Low).\n*   Evidence from the code.\n*   Recommended actions (Must-do, Should-do).\n\n### `/java:deps`\n**Description**: Analyzes project dependencies (Maven/Gradle). Checks for version conflicts, outdated libraries, and known security vulnerabilities.\n**Usage**:\n```bash\n/java:deps\n```\n\n### `/java:boundary`\n**Description**: Enforces architectural boundaries. Currently focuses on the rule that **DTO types must not appear in Service method signatures**.\n**Why**: This ensures business logic remains agnostic to the transport layer (REST, gRPC, etc.).\n**Usage**:\n```bash\n/java:boundary\n```\n**Output**:\n*   Confirmed violations (Service methods accepting/returning DTOs).\n*   Suspected violations.\n*   Refactoring recommendations.\n\n## ⚖️ Core Principles\n\n1.  **Safety First**: We verify before we act. Destructive commands require user confirmation.\n2.  **No \"Magic\"**: We explain *why* a change is suggested. We don't generate massive blocks of code without understanding the context.\n3.  **Context Aware**: We read `pom.xml` or `build.gradle` first to tailor advice to your specific stack.\n\n## README automation (java:readme)\n\nThe `java:readme` command determines whether a `README.guidelines.md` file is available and applies its structure. If not, it falls back to a default order: Project Overview, Tech Stack, Build & Run, Project Structure, Configuration, and optional Limitations/Notes. Only the AI-managed block below is updated automatically; anything outside remains manual.\n\n<!-- AI:START -->\n## Project Overview\nTODO: Summarize the analyzed Java project's purpose based on build configuration and visible source layout.\n\n## Tech Stack\nTODO: Note the detected build tool (Maven/Gradle), Java version, and frameworks (e.g., Spring Boot, Quarkus) inferred from dependencies.\n\n## Build & Run\nTODO: Provide the exact build/run commands observed (e.g., `./mvnw spring-boot:run`, `./gradlew quarkusDev`). Leave TODO if not discoverable.\n\n## Project Structure\nTODO: Outline key modules or directories in the repository using visible paths.\n\n## Configuration\nTODO: List main configuration files (e.g., `application.properties`, `application.yml`) and any notable settings surfaced in the codebase.\n\n## Limitations / Notes\nTODO: Capture known constraints or gaps; if unknown, keep TODO.\n<!-- AI:END -->\n\n## Validation\n\nTo verify that `java:readme` produced an English README with non-empty AI-managed content and markers, run:\n\n```bash\n./scripts/readme-validation.sh\n```\n\n## 📂 Project Structure\n\n*   `GEMINI.md`: System instructions and agent persona.\n*   `gemini-extension.json`: Extension manifest.\n*   `commands/`: TOML definitions for each command.\n",
  "bytes": 5507,
  "sha": "21fd62472cae47688411be8dbdd991b3649e79b4e520365c95c9abecb1c21aa4",
  "repo_slug": "grzegorz-golowicz/java-dev-assist-extension",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/plg_grzegorz_golowicz_java_dev_assist_extens_c0002f9a/readme"
}