mirror of
https://github.com/furyhawk/home_stack.git
synced 2026-07-21 10:16:47 +00:00
- Implemented a brand validation script to check content against brand guidelines including colors, fonts, tone, and messaging. - Created a comprehensive financial modeling suite with DCF analysis, sensitivity testing, Monte Carlo simulations, and scenario planning. - Added scripts for DCF modeling and sensitivity analysis, including detailed documentation for usage and input requirements. - Included example usage for both brand validation and financial modeling to demonstrate functionality.
54 lines
2.6 KiB
Python
54 lines
2.6 KiB
Python
import logfire
|
|
from pydantic_ai import Agent
|
|
from pydantic_ai.capabilities import MCP, WebSearch
|
|
from pydantic_ai.models.openai import OpenAIChatModel
|
|
from pydantic_ai.providers.openai import OpenAIProvider
|
|
from pydantic_ai_harness import CodeMode
|
|
|
|
# See https://ai.pydantic.dev/logfire/ for setup details.
|
|
logfire.configure()
|
|
logfire.instrument_pydantic_ai()
|
|
|
|
model = OpenAIChatModel(
|
|
"llama",
|
|
provider=OpenAIProvider(base_url="http://localhost:8011/v1"),
|
|
)
|
|
|
|
agent = Agent(
|
|
model,
|
|
capabilities=[
|
|
# Wraps every tool into a single run_code tool, sandboxed by Monty
|
|
# (https://github.com/pydantic/monty -- pulled in by the [code-mode] extra).
|
|
# The model writes Python that calls multiple tools with loops, conditionals,
|
|
# asyncio.gather, and local filtering -- one model round-trip for N tool calls.
|
|
CodeMode(),
|
|
# Connect to any MCP server -- here, the open-source Hacker News server
|
|
# (https://github.com/cyanheads/hn-mcp-server). native=False forces the
|
|
# local MCP toolset so CodeMode can wrap the tools; without it,
|
|
# providers that natively support MCP server connectors execute the tools
|
|
# server-side and bypass the sandbox.
|
|
MCP('https://hn.caseyjhand.com/mcp', native=False),
|
|
# Provider-adaptive web search; native=False routes through the local
|
|
# DuckDuckGo fallback (the [duckduckgo] extra above) so CodeMode can batch
|
|
# web searches alongside the HN calls in a single run_code.
|
|
WebSearch(native=False),
|
|
],
|
|
)
|
|
|
|
result = agent.run_sync(
|
|
"Across the top, best, and 'show HN' Hacker News feeds, find the most-discussed "
|
|
"story with at least 100 points. Pull its comment thread, its submitter's profile, "
|
|
"and any web coverage. Summarize what you find in one paragraph."
|
|
)
|
|
print(result.output)
|
|
"""
|
|
The most-discussed HN story across top/best/show clearing 100 points is "Vibe coding
|
|
and agentic engineering are getting closer than I'd like" by Simon Willison (748 points,
|
|
853 comments, on the Best feed), submitted by long-time HNer e12e. The piece argues
|
|
that the two modes Willison once kept mentally separate -- throwaway "vibe coding" and
|
|
disciplined "agentic engineering" -- are blurring, since agents like Claude Code now
|
|
reliably handle non-trivial tasks like "build a JSON API endpoint that runs a SQL query"
|
|
with tests and docs on the first pass. The HN thread is unusually substantive, with
|
|
commenters debating whether LLMs created or merely *exposed* sloppy engineering
|
|
practices and warning of a "normalization of deviance" as engineers stop reviewing diffs.
|
|
""" |