sharing-learnings

โดย microsoft

วิธีบันทึกบทเรียนของโครงการ เพื่อให้ผู้ปฏิบัติงานในระยะหลังและการรันเอเจนต์ในอนาคตสามารถนำไปใช้ได้

npx skills add https://github.com/microsoft/github-copilot-modernization --skill sharing-learnings

Sharing Learnings

This skill defines how a multi-agent run captures knowledge and feeds it back into later phases and future runs.

ProductPathScopeAudience
Learnings{{BASE_PATH}}/learnings/<role>/<slug>.md (git-tracked)persistent across runslater-phase agents in same run + future agents on this repo + humans

Invoked by every worker during Preflight Step 2 (consume prior learnings) and Completion Phase (produce new learnings).


1. Directory Layout

{{BASE_PATH}}/
└── learnings/<role>/<slug>.md   ← per-topic, append-friendly, git-tracked

The directory tree + filename is the index. Each file's first three lines (H1 + blank + one-sentence description) are its scannable metadata. No separate index file needed.


2. Consuming Learnings (Preflight Step 2)

  1. list_dir {{BASE_PATH}}/learnings/<your-role>/ (and any cross-cutting roles relevant to your task).
  2. Read only the first 3 lines of each file (H1 + blank + one-sentence description). Decide relevance from that sentence alone.
  3. read_file the full body only for learnings that are relevant to your current task.

Emit once after loading:

[learnings-loaded] <role>/<slug>, <role>/<slug>

Use (none) if nothing relevant was found. If a learning conflicts with your task or charter, [notify:coordinator] — do not silently ignore.


3. Learning File Format

Every file under {{BASE_PATH}}/learnings/ MUST follow this shape:

# <Slug Title>

One-sentence description that future agents scan to decide relevance.

## What Happened
Narrative: what was discovered, what went wrong, what worked.
Cite the originating project + task ID.

## Takeaway
Concrete guidance for future tasks dealing with the same topic.

## Example (optional)
Minimal snippet illustrating the point.

## History
- <YYYY-MM-DD> (<project>/<taskId>): initial
- <YYYY-MM-DD> (<project>/<taskId>): added X based on new finding

Blank template: templates/learning.md.


4. Producing Learnings (Completion Phase)

Before finishing your task, evaluate what you learned and decided.

When to write

Mandatory — you MUST write a learning when any of these apply:

  • You made a code-style or naming convention choice (e.g. camelCase vs snake_case, tab width, import ordering)
  • You made an architecture or design decision (e.g. injection style, module boundaries, error-handling strategy, API shape)
  • You chose a library, framework version, or configuration that affects project consistency

These learnings ensure style and architecture stay consistent across runs, even if the choice felt obvious.

Optional — write a learning when any of these apply:

  • Something failed or surprised you, and the resolution is worth recording
  • A pattern emerged across multiple files/decisions in the task
  • A framework/library/tool behaved differently than expected
  • A source→target mapping rule would apply to other modules too

Doing nothing is valid only if the task involved no style/architecture decisions and had no surprises.

How to write

  • One topic per file. The slug should make the topic clear (kebab-case, e.g. war-packaging-for-jsp.md).
  • Role ownership. Write under {{BASE_PATH}}/learnings/<your-own-role>/. If you spot something that belongs to another role, use [notify:<that-role>] instead.
  • Append to existing files. If a file with a matching slug already exists and covers the same topic, append a new ## History entry rather than creating a duplicate. Add new details under the existing sections.
  • Keep it short. Target < 40 lines. If it's longer, split into separate files.

Emit after writing (empty list is fine):

[learnings] written: [<role>/<slug>, ...]

Skills เพิ่มเติมจาก microsoft

oss-growth
microsoft
บุคลิกภาพนักเติบโตโอเอสเอส
agent-framework-azure-ai-py
microsoft
สร้างเอเจนต์ Azure AI Foundry โดยใช้ Microsoft Agent Framework Python SDK (agent-framework-azure-ai) ใช้เมื่อสร้างเอเจนต์แบบถาวรด้วย AzureAIAgentsProvider ใช้เครื่องมือที่โฮสต์ไว้ (ตัวแปลโค้ด การค้นหาไฟล์ การค้นหาเว็บ) ผสานรวมเซิร์ฟเวอร์ MCP จัดการเธรดการสนทนา หรือใช้งานการตอบสนองแบบสตรีมมิ่ง ครอบคลุมเครื่องมือฟังก์ชัน ผลลัพธ์แบบมีโครงสร้าง และเอเจนต์แบบหลายเครื่องมือ
development
airunway-aks-setup
microsoft
ตั้งค่า AI Runway บน AKS — จากคลัสเตอร์เปล่าสู่การรันโมเดล ครอบคลุมการตรวจสอบคลัสเตอร์ การติดตั้งคอนโทรลเลอร์ การประเมิน GPU การตั้งค่าผู้ให้บริการ และการปรับใช้ครั้งแรก เมื่อ: "ตั้งค่า AI Runway", "เริ่มใช้งานคลัสเตอร์ AKS", "ติดตั้ง AI Runway", "ตั้งค่า airunway", "ปรับใช้โมเดลกับ AKS", "อนุมานด้วย GPU บน AKS", "ตั้งค่า KAITO บน AKS", "รัน LLM บน AKS", "vLLM บน AKS", "ตั้งค่าการให้บริการโมเดลบน AKS", "AI Runway controller
devops
appinsights-instrumentation
microsoft
แนวทางสำหรับการติดตั้งเครื่องมือวัดให้กับเว็บแอปพลิเคชันด้วย Azure Application Insights ให้รูปแบบเทเลเมทรี การตั้งค่า SDK และเอกสารอ้างอิงการกำหนดค่า เมื่อใด: วิธีติดตั้งเครื่องมือวัดให้กับแอป, App Insights SDK, รูปแบบเทเลเมทรี, App Insights คืออะไร, คำแนะนำเกี่ยวกับ Application Insights, ตัวอย่างการติดตั้งเครื่องมือวัด, แนวทางปฏิบัติที่ดีที่สุดสำหรับ APM
devops
applicationinsights-web-ts
microsoft
ใช้เครื่องมือวัดแอปเบราว์เซอร์/เว็บด้วย Application Insights JavaScript SDK (@microsoft/applicationinsights-web) ใช้สำหรับ Real User Monitoring (RUM) — การดูหน้าเว็บ คลิก ดีเพนเดนซี AJAX/fetch ข้อยกเว้น อีเวนต์ที่กำหนดเอง และเทรซเอเจนต์ GenAI ฝั่งเบราว์เซอร์ที่เชื่อมโยงกับเทรซ OpenTelemetry ฝั่งแบ็กเอนด์ ครอบคลุมการตั้งค่า SDK Loader Script และ npm ส่วนขยายเฟรมเวิร์ก (React, React Native, Angular), Click Analytics, ตัวเริ่มต้นเทเลเมทรี และหลักการตั้งชื่อเชิงความหมาย OTel GenAI สำหรับสแปนเอเจนต์/เครื่องมือ/โมเดลที่ส่งจากเบราว์เซอร์
devops
azure-ai-anomalydetector-java
microsoft
สร้างแอปพลิเคชันตรวจจับความผิดปกติด้วย Azure AI Anomaly Detector SDK สำหรับ Java ใช้เมื่อต้องการนำการตรวจจับความผิดปกติแบบตัวแปรเดียว/หลายตัวแปร การวิเคราะห์อนุกรมเวลา หรือการตรวจสอบที่ขับเคลื่อนด้วย AI ไปใช้
development
azure-ai-language-conversations-py
microsoft
ใช้ Conversational Language Understanding (CLU) ด้วย Python SDK ของ azure-ai-language-conversations ใช้เมื่อทำงานกับ ConversationAnalysisClient เพื่อวิเคราะห์เจตนาและเอนทิตีของการสนทนา สร้างฟีเจอร์ NLP หรือผสานความเข้าใจภาษาเข้ากับแอปพลิเคชัน
development
azure-ai-ml-py
microsoft
Azure Machine Learning SDK v2 สำหรับ Python ใช้สำหรับพื้นที่ทำงาน ML งาน โมเดล ชุดข้อมูล คอมพิวต์ และไปป์ไลน์ ทริกเกอร์: "azure-ai-ml", "MLClient", "workspace", "model registry", "training jobs", "datasets
development