Skip to content
Back to skills

Ideogram Local Dev Loop

ASecurity

Build a fixture-first local loop for Ideogram multipart requests, async states, safety outcomes, and expiring assets. Use when developing or testing without uncontrolled API spend. Trigger with "mock Ideogram locally", "test Ideogram fixtures", or "debug an Ideogram adapter".

  • 2,719 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 21, 2026
ai-agentsrusttestingapi

Works with

  • claude code
  • terminal
  • api

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned September 21, 2026

npx -y skills add jeremylongshore/claude-code-plugins-plus --skill ideogram-local-dev-loop --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Ideogram Local Dev Loop?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Ideogram Local Dev Loop
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/jeremylongshore-ideogram-local-dev-loop-cb9a1e4a/badge)](https://www.skillsdirectory.com/skills/jeremylongshore-ideogram-local-dev-loop-cb9a1e4a)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: ideogram-local-dev-loop
description: >-
  Build a fixture-first local loop for Ideogram multipart requests, async states, safety outcomes, and expiring assets. Use when developing or testing without uncontrolled API spend. Trigger with "mock Ideogram locally", "test Ideogram fixtures", or "debug an Ideogram adapter".
allowed-tools: Read,Glob,Grep,Write,Edit
argument-hint: "<adapter-path> <test-command> [live-smoke-flag]"
version: 1.11.0
license: MIT
author: Jeremy Longshore <jeremy@intentsolutions.io>
tags: [saas, ideogram, testing]
model: inherit
effort: high
compatibility: "Designed for Claude Code; deterministic local tests require no vendor credentials"
---
# Ideogram Fixture-First Development Loop

## Overview

Develop the Ideogram boundary against owned request and response contracts before spending credit. Model multipart fields, asynchronous lifecycle states, unsafe outputs, transient errors, and expiring URLs as fixtures so the fast loop remains deterministic and privacy-safe.

## Prerequisites

- The repository's adapter seam, test runner, fixture policy, and data classification.
- Sanitized synthetic examples for success, unsafe output, validation failure, throttling, and terminal failure.
- An opt-in live-smoke flag that is disabled by default and on untrusted forks.

## Current Contract

Current generation surfaces include V4 synchronous and asynchronous routes, transparent variants, P-Image, and V3 compatibility routes. Async work returns a `generation_id`; status is reconciled by appending that returned value to `GET /v1/generations/` or by receiving a webhook. Returned asset URLs are temporary.

## Authentication

Fixtures must not contain credentials. When a separately approved live lane runs, inject `IDEOGRAM_API_KEY` server-side and send it only in the `Api-Key` header to the configured first-party host.

## Instructions

1. Read the adapter and enumerate request fields, response variants, error classes, and storage side effects.
2. Create sanitized fixtures for sync success, async submission, in-progress polling, safe and unsafe completion, `400`, `401`, `422`, `429`, and `503`.
3. Test multipart construction by field name and file metadata without snapshotting secrets or customer content.
4. Verify idempotent status reconciliation, duplicate webhook handling, bounded polling, URL download, and durable object persistence.
5. Keep the paid live smoke behind an explicit environment flag, trusted context, credit ceiling, and synthetic prompt.
6. Compare live response shape to fixtures, update only reviewed schema drift, and record cleanup.

## Tool Discipline

Use Read, Glob, and Grep to locate adapters, fixtures, and test commands. Use Write and Edit for approved test and adapter changes. Do not infer permission to call Ideogram, upload an image, spend credit, or retain generated media.

## Approval Boundaries

Offline fixture work is safe by default. Require approval before any live request, use of production credentials, customer-derived input, shared bucket write, fixture refresh from real responses, or deployment.

## Error Handling

- Reject fixtures containing key-like values, raw customer prompts, image bytes, or live URLs.
- Keep retry tests deterministic by injecting clocks and jitter rather than sleeping.
- Treat unrecognized response fields as explicit drift evidence; do not silently discard safety or billing signals.

## Output

Return adapter path, fixture inventory, assertion counts, deterministic command and result, live-lane status, detected contract drift, sensitive-data scan result, and cleanup state. Exclude prompts, images, credentials, and expiring URLs.

## Examples

- Test that `is_image_safe=false` produces no download attempt and a reviewable policy result.
- Test async transitions `submitted -> processing -> terminal` with duplicate delivery and polling fallback.

## Validation

Run the narrowest test command twice, confirm identical results, scan fixtures for secrets and URLs, and ensure the live lane remains disabled on forks. Verify temporary files and objects are removed after the test.

## Resources

- [Current first-party evidence map](references/official-docs.md) — use the dated endpoint, webhook, billing, team, and training links as the contract index for this workflow.
- Recheck the endpoint-specific page and current OpenAPI description before relying on an enum, limit, beta feature, or lifecycle claim.
- Record live observations as environment-specific evidence, not as universal vendor guarantees.

Files in this skill

  • SKILL.md4.4 KB
  • references/official-docs.md2.4 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.