in devai-cli/src/devai/commands/prompts.py [0:0]
def show_prompt(path: str):
"""Show details of a specific prompt template."""
prompt_file, is_user_override = find_prompt_file(path)
if not prompt_file.exists():
click.echo(f"Error: Prompt template not found at {path}", err=True)
return
try:
with open(prompt_file, 'r') as f:
data = yaml.safe_load(f)
# Print metadata
metadata = data.get('metadata', {})
click.echo(f"\n{click.style(metadata.get('name', 'Unnamed'), fg='green')}")
if is_user_override:
click.echo("(User override)")
click.echo(f"Category: {metadata.get('category', 'N/A')}")
click.echo(f"Subcategory: {metadata.get('subcategory', 'N/A')}")
click.echo(f"Description: {metadata.get('description', 'No description')}")
click.echo(f"Tags: {', '.join(metadata.get('tags', []))}")
# Print configuration
config = data.get('configuration', {})
click.echo("\nConfiguration:")
click.echo(f" Temperature: {config.get('temperature', 'N/A')}")
click.echo(f" Max Tokens: {config.get('max_tokens', 'N/A')}")
click.echo(f" Output Format: {config.get('output_format', 'N/A')}")
# Print prompt sections
prompt = data.get('prompt', {})
click.echo("\nSystem Context:")
click.echo(prompt.get('system_context', 'N/A'))
click.echo("\nInstruction:")
click.echo(prompt.get('instruction', 'N/A'))
if 'examples' in prompt:
click.echo("\nExamples:")
for i, example in enumerate(prompt['examples'], 1):
click.echo(f"\nExample {i}:")
click.echo("Input:")
click.echo(example.get('input', 'N/A'))
click.echo("Output:")
click.echo(example.get('output', 'N/A'))
# Print validation
validation = data.get('validation', {})
if validation:
click.echo("\nValidation:")
click.echo(f" Required Sections: {', '.join(validation.get('required_sections', []))}")
click.echo(f" Quality Checks: {', '.join(validation.get('quality_checks', []))}")
except Exception as e:
click.echo(f"Error reading prompt template: {str(e)}", err=True)