Skip to content

Instantly share code, notes, and snippets.

View pamelafox's full-sized avatar

Pamela Fox pamelafox

View GitHub Profile
@pamelafox
pamelafox / SKILL.md
Last active February 13, 2026 06:36
Skill - markitdown convert to markdown
name description argument-hint
pdf-to-markdown
Converts PDF files to Markdown using Microsoft's markitdown package. Use this skill when the user asks to convert a PDF to Markdown, extract text from a PDF, or read/parse PDF content.
[path to file]

PDF to Markdown Conversion

This skill converts PDF files to Markdown format using Microsoft's markitdown package.

@pamelafox
pamelafox / copilotmemory.md
Created February 12, 2026 17:02
How Copilot Memory works in VS Code

Overall algorithm

This is currently speculation:

  1. When starting a session, it retrieves memories from the associated GitHub repository for the current branch and injects those into the initial user message.
  2. When it sees something it should remember (like if I say "Remember that..."), it uses the memory tool to "view" existing memories, and then uses the memory tool to save the existing memory.
  3. A hook then saves local memories to the GitHub repository and clears them from the local file system.

System prompt: How to use memory

@pamelafox
pamelafox / review_pr_comments.prompt.md
Created February 10, 2026 19:47
review_pr_comments.prompt.md
name description
review_pr_comments
This prompt is used to review comments on an active pull request and decide whether to accept, iterate, or reject the changes suggested in each comment.

We have received comments on the current active pull request. Together, we will go through each comment one by one and discuss whether to accept the change, iterate on it, or reject the change.

Steps to follow:

  1. Fetch the active pull request: If available, use the activePullRequest tool from the GitHub Pull Requests toolset to get the details of the active pull request including the comments. If not, use the GitHub MCP server or GitHub CLI to get the details of the active pull request. Fetch both top level comments and inline comments.
  2. Present a list of the comments with a one-sentence summary of each.
@pamelafox
pamelafox / evaluation.py
Created December 2, 2025 19:50
Evaluation of an agent
import asyncio
import json
import os
from azure.ai.evaluation import AzureOpenAIModelConfiguration, IntentResolutionEvaluator
from azure.identity import DefaultAzureCredential, get_bearer_token_provider
from dotenv import load_dotenv
from agentframework_learn import run_agent
@pamelafox
pamelafox / Dockerfile
Last active December 2, 2025 13:38
Dockerfile for FastMCP and uv
# ------------------- Stage 0: Base Stage ------------------------------
FROM python:3.13-alpine AS base
# Install tini, a tiny init for containers
RUN apk add --update --no-cache tini
# Install required packages for cryptography and ml-dtypes packages
# https://cryptography.io/en/latest/installation/#building-cryptography-on-linux
RUN apk add gcc g++ musl-dev python3-dev libffi-dev openssl-dev cargo pkgconfig
@pamelafox
pamelafox / claude-anthropic.py
Last active November 25, 2025 22:25
Claude with Python
import os
from anthropic import AnthropicFoundry
from dotenv import load_dotenv
load_dotenv()
endpoint = "https://pf-claude-foundry-proje-resource.openai.azure.com/anthropic"
deployment_name = "claude-sonnet-4-5"
@pamelafox
pamelafox / compare_search_indexes.py
Created November 11, 2025 22:27
compare_search_indexes.py
"""Compare documents across two Azure AI Search indexes"""
import argparse
import asyncio
import logging
import os
from collections.abc import Iterable, Mapping
from dataclasses import dataclass, field
from typing import Any, cast
@pamelafox
pamelafox / gist:c6318cb5d367731ce7ec01340ebd780c
Last active February 1, 2026 11:10
Agent Frameworks comparison

Agents using MCP servers

Framework MCP integration Tool filtering? Example
Langchain MultiServerMCPClient accepts a dictionary of MCP servers Filter with get_tools() after connecting to servers Example
Agent-framework MCPStreamableHTTPTool for each MCP server Filter with allowed_tools on that class, or tools on agent.run() Example
Pydantic AI MCPServerStreamableHTTP for each MCP server Apply .filtered() method to the server and use result as a toolset for agent Example
@pamelafox
pamelafox / techspec.md
Created October 16, 2025 22:52
YouTube to Article Tech Spec

YouTube Talk to Article – Lean MVP Technical Spec

Derived from the original PRD but intentionally simplified for fastest viable implementation. Focus: “folder in, article out” with minimal config, vision-first extraction, and straightforward alignment (no embeddings initially).

1. MVP Goal & Non-Goals

Goal: Given a folder containing a deck.pptx (and optionally a transcript + config.yaml), produce article.md plus slide images using a simple CLI: talk2article <folder>.

Included in MVP:

@pamelafox
pamelafox / python.instructions.md
Created October 11, 2025 05:18
Python Coding Instructions
description applyTo
Python coding conventions and guidelines
**/*.py

Python Coding Conventions

Python Instructions

  • Write clear and concise comments for each function.