ปัญหาอย่างหนึ่งสำหรับนักพัฒนาคือ
เรื่องเอกสารที่ใช้อธิบาย code ของระบบที่ดูแล
มันไม่ค่อยตรงกับ code จริง ๆ สักเท่าไร
หนักกว่านั้น มันไม่เคยมีเลย !!
แต่เมื่อเราต้องมาดูแล หรือ พัฒนา code เหล่านั้นแล้ว
เราทำความเข้าใจ code เหล่านั้นกันอย่างไรบ้าง ?
หนึ่งในแนวทางคือ การใช้งาน Pocket Flow: Codebase to Tutorial

การทำงานจะเป็น Workflow ที่กำหนดไว้ดังนี้

ขั้นตอนที่ 1 ดึงข้อมูลจาก Git repository/provider

เช่น GitHub เป็นต้น หรือจะเป็น Local directory ก็ได้
โดยที่เราสามารถทำการ filter file หรือ folder ต่าง ๆ ได้
แต่ระวังจะโดน rate limit ในการดึง code ผ่าน GitHub ด้วย
หรือจะกำหนดภาษาที่จะให้ทำการสร้างหรือสรุปมาให้ได้
ซึ่งภาษา default คือ ภาษาอังกฤษ (จากการใช้งานยังไม่ได้ลองภาษาอื่น)

ขั้นตอนที่ 2 ทำการวิเคราะห์หา abstraction ของ code ผ่าน LLM provider

สามารถใช้งานได้ทั้ง OpenAI, Gemini, Anthropic และ OpenRouter เป็นต้น

ขั้นตอนที่ 3 ทำการวิเคราะห์ความสัมพันธ์ต่าง ๆ จากขั้นตอนที่ 2

ขั้นตอนที่ 4 ทำการจัดเรียงลำดับของแต่ละบทหรือแต่ละหัวข้อ

ขั้นตอนที่ 5 ทำการเขียนรายละเอียดของแต่ละบท

ขั้นตอนที่ 6 ทำการนำแต่ละบทมาเขียนลงไฟล์ Markdown format

รวมทั้ง generate diagram ต่าง ๆ ในรูปแบบของ mermaid diagram ให้
ทำการสร้าง link ต่าง ๆ ภายในเอกสารหรือหัวข้อต่าง ๆ

แสดงการทำงานดังรูป

เมื่อทำความเข้าใจขั้นตอนการทำงานขั้นพื้นฐานแล้ว

ลองมาใช้งานกันดู

รอสักครู่ จะได้เอกสารออกมาใน folder output ดังรูป

เท่านี้ก็ได้เอกสารไว้อธิบาย code แบบง่าย ๆ แล้ว
ลองดูครับว่า ผลออกมาพอช่วยเราได้หรือไม่
ถ้าไม่ตรงใจ เราสามารถแก้ไข code ได้เลย