ข้ามไปยังเนื้อหา

ใช้ FortressFlag จาก AI agent

ถ้าคุณทำงานกับ AI coding agent คุณมอบ flag ของคุณให้มันได้ “ปิด new-checkout ใน production” คือประโยคที่มีการเรียก API ที่แน่นอนอยู่เบื้องหลัง — และเป็นประโยคที่แตะผู้ใช้จริงของคุณ ซึ่งเป็นเหตุผลที่คู่มือนี้ใช้เวลากับข้อจำกัดมากพอ ๆ กับการตั้งค่า

FortressFlag มาพร้อม MCP server โปรแกรมเล็ก ๆ ที่รันบนเครื่องของคุณเอง เคียงข้าง agent ของคุณ และส่งชุดเครื่องมือ flag ให้มัน

ฉบับสั้น agent ของคุณทำได้เท่าที่คุณทำได้ทุกประการ และน้อยกว่า

Server ถือโทเค็น API ที่กระทำในฐานะ คุณ — บทบาทของคุณ การเข้าถึงโปรเจกต์ของคุณ องค์กรของคุณ มันคุยกับ FortressFlag ผ่าน API สาธารณะเดียวกับที่แดชบอร์ดใช้ ทุกการตรวจสอบสิทธิ์ allowlist ของโปรเจกต์ และบันทึกการตรวจสอบจึงเหมือนกับตอนที่คุณคลิกปุ่มเองทุกประการ ไม่มีเส้นทางเข้าถึงพิเศษสำหรับ agent

บางอย่างตั้งใจไม่เปิดให้ agent ทำเลย

  • การอนุมัติข้อเสนอ production ประเด็นทั้งหมดของสายตาคู่ที่สองคือมันต้องเป็นของคน
  • การลบ flag ถาวร
  • การสร้างคีย์ SDK หรือโทเค็น API ความลับที่แสดงครั้งเดียวซึ่งถูกส่งกลับให้ agent จะไปลงเอยในบันทึกบทสนทนา
  • การจัดการสมาชิก การเรียกเก็บเงิน หรือข้อตกลงทางกฎหมาย

1. สร้างโทเค็น ในแดชบอร์ด ไปที่หน้าบัญชีของคุณแล้วหา โทเค็น API ตั้งชื่อที่คุณจำได้ เลือกขอบเขต แล้วคัดลอกโทเค็น — มันแสดงครั้งเดียว

เลือก อ่านอย่างเดียว เว้นแต่คุณต้องการให้ agent ทำการเปลี่ยนแปลง คุณสร้างโทเค็นที่สองภายหลังได้เสมอ

2. ชี้ agent ของคุณไปที่ server MCP client ส่วนใหญ่รับบล็อกการตั้งค่าเล็ก ๆ ที่ระบุคำสั่งและตัวแปรสภาพแวดล้อมของมัน

{
"mcpServers": {
"fortressflag": {
"command": "ffmcp",
"env": {
"FORTRESSFLAG_TOKEN": "ffm_your_token_here",
"FORTRESSFLAG_API_URL": "https://your-fortressflag-api"
}
}
}
}

โทเค็นอยู่ใน env ไม่ใช่ args เด็ดขาด — อาร์กิวเมนต์บรรทัดคำสั่งมองเห็นได้โดยผู้ใช้อื่นบนเครื่องที่ใช้ร่วมกัน

3. เพิ่ม --allow-writes เมื่อคุณต้องการการเปลี่ยนแปลง ถ้าไม่มีมัน server จะเสนอเฉพาะเครื่องมืออ่าน เมื่อมี agent ของคุณจะสลับ สร้าง เปลี่ยนชื่อ เก็บถาวร และกู้คืน flag ได้ — ยังคงจำกัดด้วยสิ่งที่บทบาทของคุณอนุญาต

"args": ["--allow-writes"]

มอง flag ตัวนั้นเป็นความสะดวก ไม่ใช่กุญแจล็อก ถ้า agent ไม่มีธุระต้องเปลี่ยน flag ให้ โทเค็นแบบอ่านอย่างเดียว กับมันด้วย — นั่นคือส่วนที่ FortressFlag บังคับใช้จริง

บทบาทของคุณตัดสินก่อน ถ้าคุณเป็น Developer คุณเขียน production โดยตรงไม่ได้ — agent ของคุณก็ไม่ได้เช่นกัน สิ่งที่มันทำได้คือ เสนอ การเปลี่ยนแปลง เหมือนที่คุณทำทุกประการ เพื่อนร่วมทีมคนที่สองนำไปใช้ และไม่มีใครอนุมัติข้อเสนอของตัวเองได้ ดูการอนุมัติ production

เครื่องมือถามอีกครั้งเป็นชั้นที่สอง ก่อนแตะสภาพแวดล้อม production agent ต้องระบุว่ามันตั้งใจจะทำ โดยเอ่ยชื่อสภาพแวดล้อม การตรวจสอบนั้นอ่านคลาส productionของสภาพแวดล้อม ไม่ใช่ชื่อของมัน — สภาพแวดล้อมที่คุณตั้งชื่อว่า live จึงได้รับการปกป้องเหมือนตัวที่ชื่อ prod ทุกประการ และตัวที่แค่ ชื่อ prod แต่ไม่ใช่คลาส production จะไม่จู้จี้กับคุณ

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

ควรพูดให้ชัด อะไรก็ตามที่ agent อ่านจะกลายเป็นส่วนหนึ่งของบทสนทนาของมันกับบริการ AI ที่มันใช้ ซึ่งรวมถึง ชื่อ คีย์ และคำอธิบายของ flag ที่ทีมของคุณเขียน และ — ถ้าคุณขอให้มันอ่านประวัติการตรวจสอบ — ชื่อและที่อยู่อีเมลของเพื่อนร่วมทีมของคุณ

สองสิ่งตามมา

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

เรามองไม่เห็นและควบคุมบันทึกบทสนทนานั้นไม่ได้ มันอยู่ระหว่างคุณกับผู้ให้บริการ AI ของคุณ ไม่มีอะไรเกี่ยวกับวิธีที่ FortressFlag เก็บหรือส่งข้อมูลของคุณเปลี่ยนไปเมื่อคุณใช้สิ่งนี้ — เครื่องมือเหล่านี้ก็แค่อีกไคลเอนต์หนึ่งของ API เดียวกัน

  • มันรันในเครื่องเท่านั้น server คุยกับ agent ของคุณผ่าน standard input และ output บนเครื่องของคุณ ไม่มีเวอร์ชันโฮสต์ให้ชี้ agent ระยะไกลมาหา
  • ยังไม่มีไบนารีให้ดาวน์โหลด — ตอนนี้ต้อง build จากซอร์ส
  • กฎการเจาะกลุ่มและเซกเมนต์ยังแก้ไขโดย agent ไม่ได้ การอ่าน flag การสลับ และการเสนอการเปลี่ยนแปลง production ทำได้ แต่ตัวแก้ไขกฎเป็นพื้นผิวที่ใหญ่กว่าและสมควรได้รอบการออกแบบของตัวเอง
  • การแสดงรายการข้อเสนอที่รออยู่ต้องใช้สิทธิ์ผู้อนุมัติ โทเค็นของ Developer เสนอการเปลี่ยนแปลง production ได้ แต่แสดงรายการมันต่อไม่ได้ — นั่นคือสิทธิ์บน API ที่อยู่เบื้องล่าง ไม่ใช่ความประหลาดของเครื่องมือ