Skip to content

Conversation

Copy link

Copilot AI commented Nov 29, 2025

Makes Arrowhead demonstrable without external LLM access by adding documentation, a deterministic demo, and CI smoke tests.

Changes

Documentation

  • README.md: Added TL;DR, problem statement, Ollama/OpenAI quickstart, env vars config, expected output example
  • docs/SCREENSHOT_README.md: Instructions for adding CLI screenshot

Demo

  • demo/sample_note.md: Sample Obsidian journal with hashtags (#meeting, #work, etc.)
  • demo/run_summary_demo.py: TextRank-based extractive summarizer via networkx—no external API calls
# Deterministic summarization for CI
summary = textrank_summarize(note_content, num_sentences=5)

# LLM integration points clearly marked:
# def summarize_with_llm(text, model="llama2"): ...
# def summarize_with_openai(text): ...

CI

  • requirements.txt: numpy, nltk, networkx, pytest
  • tests/smoke_test.py: 9 tests validating demo execution, output content, determinism
  • .github/workflows/ci.yml: Python 3.12, installs deps, downloads NLTK punkt, runs smoke tests

⚠️ Do not merge without owner approval.

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • https://api.github.com//advisories
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node /home/REDACTED/work/_temp/ghcca-node/node/bin/node --enable-source-maps /home/REDACTED/work/_temp/copilot-developer-action-main/dist/index.js (http block)

If you need me to access, download, or install something from one of these locations, you can either:

Original prompt

Goal: Prepare the arrowhead LLM-powered Obsidian summarizer to be portfolio-ready by adding a clear README with quickstart, an example smoke-test demo script that runs a small summarization locally using a simple heuristic or a local small model placeholder, and a CI workflow to run the smoke test. Create branch portfolio/docs-arrowhead and open PR to main. Do not merge.

Required changes:

  1. README.md - TL;DR, problem summary (Obsidian automated summarizer), features, quickstart (how to configure local LLM or Ollama, env variables), example usage and expected outputs, license, and screenshot placeholder.
  2. demo/sample_note.md - sample obsidian note content used by demo.
  3. demo/run_summary_demo.py - lightweight script that reads sample_note.md and produces a summary using a simple heuristic (e.g., extract first 3 lines + simple sentence-rank using TextRank via networkx or sumy if available) to avoid external LLM calls in CI. Include clear comments where to plug LLM calls (OLLAMA/OpenAI) and how to configure API keys.
  4. tests/smoke_test.py - runs demo/run_summary_demo.py and asserts non-empty output.
  5. .github/workflows/ci.yml - installs python deps from requirements.txt and runs tests/smoke_test.py.
  6. requirements.txt - minimal dependencies: "numpy", "nltk", "networkx", "sumy" (or alternatives) and instructions to download NLTK punkt in CI.

PR description: Adds documentation, a safe demo using deterministic heuristics for CI, and a smoke-test CI workflow to make arrowhead demonstrable without external LLM access. Do not merge without owner approval.

Notes: Keep CI deterministic and offline; include instructions for enabling real LLM usage locally in README.

This pull request was created as a result of the following prompt from Copilot chat.

Goal: Prepare the arrowhead LLM-powered Obsidian summarizer to be portfolio-ready by adding a clear README with quickstart, an example smoke-test demo script that runs a small summarization locally using a simple heuristic or a local small model placeholder, and a CI workflow to run the smoke test. Create branch portfolio/docs-arrowhead and open PR to main. Do not merge.

Required changes:

  1. README.md - TL;DR, problem summary (Obsidian automated summarizer), features, quickstart (how to configure local LLM or Ollama, env variables), example usage and expected outputs, license, and screenshot placeholder.
  2. demo/sample_note.md - sample obsidian note content used by demo.
  3. demo/run_summary_demo.py - lightweight script that reads sample_note.md and produces a summary using a simple heuristic (e.g., extract first 3 lines + simple sentence-rank using TextRank via networkx or sumy if available) to avoid external LLM calls in CI. Include clear comments where to plug LLM calls (OLLAMA/OpenAI) and how to configure API keys.
  4. tests/smoke_test.py - runs demo/run_summary_demo.py and asserts non-empty output.
  5. .github/workflows/ci.yml - installs python deps from requirements.txt and runs tests/smoke_test.py.
  6. requirements.txt - minimal dependencies: "numpy", "nltk", "networkx", "sumy" (or alternatives) and instructions to download NLTK punkt in CI.

PR description: Adds documentation, a safe demo using deterministic heuristics for CI, and a smoke-test CI workflow to make arrowhead demonstrable without external LLM access. Do not merge without owner approval.

Notes: Keep CI deterministic and offline; include instructions for enabling real LLM usage locally in README.


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

Copilot AI and others added 2 commits November 29, 2025 17:44
Co-authored-by: edgarbc <4164895+edgarbc@users.noreply.github.com>
… workflow permissions

Co-authored-by: edgarbc <4164895+edgarbc@users.noreply.github.com>
Copilot AI changed the title [WIP] Prepare Obsidian summarizer for portfolio with documentation and demo Add portfolio documentation, demo script, and CI workflow Nov 29, 2025
Copilot AI requested a review from edgarbc November 29, 2025 17:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants