AgentSkillsCN

gemini-code-engineering

将Gemini用作代码辅助工具的策略。可用于生成新代码、调试错误、翻译语言,或阐释复杂的逻辑结构。

SKILL.md
--- frontmatter
name: gemini-code-engineering
description: strategies for using Gemini as a coding assistant. Use this for generating new code, debugging errors, translating languages, or explaining complex logic.

Gemini Code Engineering Strategies

Goal

Leverage Gemini to accelerate software development by generating clean, documented code, debugging complex errors, and translating between programming languages.

Core Capabilities

1. Generating Code

  • Context: When asking for code, specify the language and the desired functionality clearly.
  • Security & Safety: Always review and test generated code, as LLMs cannot "reason" and may hallucinate or repeat insecure patterns from training data.
  • Formatting: When using Vertex AI Studio, ensure you click "Markdown" to preserve indentation (crucial for Python).
  • Example Prompt:

    "Write a code snippet in [Language] which asks for [Input]. Then take the contents and [Action]...".

2. Explaining Code

  • Usage: Useful for understanding legacy code or reviewing team contributions.
  • Technique: Paste the code (optionally removing comments to force a fresh analysis) and ask for a step-by-step explanation.
  • Outcome: The model breaks down the script into logical blocks (e.g., "User Input," "Folder Check," "File Renaming").

3. Translating Code

  • Usage: Modernizing legacy scripts (e.g., Bash to Python) or porting applications to new frameworks.
  • Workflow:
    1. Provide the source code.
    2. Specify the target language.
    3. Test the output immediately, as syntax nuances (like indentation) are critical.
  • Example Prompt:

    "Translate the below Bash code to a Python snippet.".

4. Debugging & Reviewing

  • Usage: Fixing broken scripts or optimizing working code.
  • Technique: Provide both the broken code and the error trace (stack trace).
  • Outcome: Gemini identifies the specific bug (e.g., NameError), provides the corrected code, and often suggests general improvements (like "handle spaces gracefully" or "use f-strings").
  • Example Prompt:

    "The below Python code gives an error: [Paste Traceback]. Debug what's wrong and explain how I can improve the code.".

Best Practices

  • Iterative Refinement: Code generation is rarely perfect on the first shot. Use the "Chat" capability to refine the output (e.g., "Make this variable uppercase" or "Add error handling").
  • Multimodal Inputs: While primarily text-based, remember that you can combine code prompting with other modalities if the model supports it.