Install
$ agentstack add skill-andrmaz-spec-driven-architecture-component-rendering ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Component Rendering
Handles streaming props and persistent component state.
Quick Start
const { streamStatus, propStatus } = useTamboStreamStatus();
if (streamStatus.isPending) return ;
if (streamStatus.isStreaming) return ;
Stream Status
Track overall and per-prop streaming status:
import { useTamboStreamStatus } from "@tambo-ai/react";
function MyComponent({ title, items }: Props) {
const { streamStatus, propStatus } = useTamboStreamStatus();
// Global status
if (streamStatus.isPending) return ;
if (streamStatus.isStreaming) return ;
if (streamStatus.isError) return ;
// Per-prop status
return (
{title}
);
}
StreamStatus Properties
| Property | Description | | ------------- | -------------------------------- | | isPending | No tokens received yet | | isStreaming | Active streaming in progress | | isSuccess | All props finished without error | | isError | Fatal error occurred | | streamError | Error object if failed |
PropStatus (per-prop)
| Property | Description | | ------------- | ---------------------------- | | isPending | No tokens for this prop yet | | isStreaming | Prop has partial content | | isSuccess | Prop finished streaming | | error | Error for this prop (if any) |
Component State
Make state visible to AI and persist across sessions:
import { useTamboComponentState, useTamboStreamStatus } from "@tambo-ai/react";
function EditableCard({ title: streamedTitle }: { title?: string }) {
const [title, setTitle, { isPending, flush }] = useTamboComponentState(
"title",
"",
);
const { streamStatus } = useTamboStreamStatus();
return (
setTitle(e.target.value)}
disabled={streamStatus.isStreaming || isPending}
/>
);
}
useTamboComponentState API
const [value, setValue, meta] = useTamboComponentState(
key, // Unique state key within the component
initialValue, // Initial value if no server state
debounceTime, // Debounce ms (default: 500)
);
| Return | Description | | ---------------- | ------------------------------------------- | | value | Current state value | | setValue | Update state (supports updater functions) | | meta.isPending | Server sync in progress | | meta.error | Sync error (if any) | | meta.flush | Immediately flush pending debounced updates |
setValue Patterns
// Direct value
setTitle("New title");
// Updater function
setCount((prev) => prev + 1);
When to Use Component State
- User-editable content AI should see
- Form inputs requiring persistence
- State that survives page reloads
- Streaming props that user can modify after generation
Streaming Best Practices
- Make props optional in Zod schema:
``tsx z.object({ title: z.string().optional().describe("Card title"), items: z.array(z.string()).optional(), }); ``
- Show skeletons for missing data, not errors
- Use optional chaining:
items?.map(...)
- Disable interactions until
streamStatus.isSuccess
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: andrmaz
- Source: andrmaz/spec-driven-architecture
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.