ನನ್ನ AGENTS.md ಫೈಲ್‌ನಲ್ಲಿ ನಿಜವಾಗಿಯೂ ಏನಿದೆ

ನನ್ನ AGENTS.md ಫೈಲ್ ಆರಂಭದಲ್ಲಿ ಕೇವಲ ಅನಗತ್ಯ ಮಾಹಿತಿಗಳನ್ನು ತುಂಬಿದ ಡ್ರಾಯರ್‌ನಂತಿತ್ತು. ಅದಕ್ಕೆ ಸ್ಟೈಲ್ ನೋಟ್ಸ್ ಮತ್ತು ಟೆಕ್ ಸ್ಟ್ಯಾಕ್ ವಿವರಗಳು ಬೇಕೆಂದು ನಾನು ಭಾವಿಸಿದ್ದೆ. ಆದರೆ ನಾನು ತಪ್ಪಾಗಿದ್ದೆ.

ಒಂದು AI ಏಜೆಂಟ್ ನಿಮ್ಮ ಫಾರ್ಮ್ಯಾಟಿಂಗ್ ನಿಯಮಗಳನ್ನು ನಿರ್ಲಕ್ಷಿಸುತ್ತದೆ. ಅದರ ಕೆಟ್ಟ ಪ್ರವೃತ್ತಿಗಳನ್ನು ತಡೆಯುವ ನಿಯಮಗಳನ್ನು ಮಾತ್ರ ಅದು ಪಾಲಿಸುತ್ತದೆ.

ನನ್ನ ಸ್ವಂತ ಕೋಡ್ ವಿರುದ್ಧ ಈ ಫೈಲ್‌ಗಳನ್ನು ಪರೀಕ್ಷಿಸುವ ಮೂಲಕ ನಾನು ಕಲಿತ ವಿಷಯಗಳು ಇಲ್ಲಿವೆ.

ನಿಲ್ಲಿಸಲು ನೀಡುವ ಅನುಮತಿ

ಮೊದಲ ನಿಯಮವು ಕೋಡ್ ಬಗ್ಗೆ ಅಲ್ಲ. ಅದು ಅನುಮತಿಯ ಬಗ್ಗೆ.

ಏಜೆಂಟ್‌ಗಳು ಸಹಾಯಕವಾಗಿ ಕಾಣಲು ಬಯಸುತ್ತವೆ. ಅವು ಅಸ್ಪಷ್ಟತೆಯನ್ನು ಹೋಗಲಾಡಿಸಲು ಮೌನವಾಗಿ ಒಂದು ಉತ್ತರವನ್ನು ಆರಿಸಿಕೊಳ್ಳುತ್ತವೆ. ಇದು ನೂರಾರು ಸಾಲುಗಳ ತಪ್ಪಾದ ಕೋಡ್‌ಗೆ ಕಾರಣವಾಗುತ್ತದೆ.

ವಿಷಯಗಳು ಅಸ್ಪಷ್ಟವಾಗಿದ್ದಾಗ ನಿಲ್ಲಿಸಿ ಕೇಳುವಂತೆ ನಾನು ನನ್ನ ಏಜೆಂಟ್‌ಗಳಿಗೆ ಹೇಳುತ್ತೇನೆ. ತಮ್ಮ ಅಂದಾಜುಗಳನ್ನು (assumptions) ತಿಳಿಸುವಂತೆ ಹೇಳುತ್ತೇನೆ. "ನನಗೆ ಖಚಿತವಿಲ್ಲ" ಎಂದು ಹೇಳುವುದು ಸೋಲಲ್ಲ, ಬದಲಾಗಿ ಅದು ಯಶಸ್ಸು ಎಂದು ನಾನು ಅವರಿಗೆ ತಿಳಿಸುತ್ತೇನೆ.

ನಿಷೇಧಿತ ಅಭ್ಯಾಸಗಳ ನಿಯಮಗಳು

ಅತ್ಯಂತ ಉಪಯುಕ್ತ ನಿಯಮಗಳು ಒಂದು ಕೆಟ್ಟ ಪ್ರವೃತ್ತಿಯನ್ನು ಹೆಸರಿಸಿ ಅದನ್ನು ನಿಷೇಧಿಸುತ್ತವೆ.

• ಅತಿಯಾಗಿ ನಿರ್ಮಿಸಬೇಡಿ (over-build). ಸಮಸ್ಯೆಯನ್ನು ಪರಿಹರಿಸಲು ಅಗತ್ಯವಿರುವ ಕನಿಷ್ಠ ಕೋಡ್ ಅನ್ನು ಮಾತ್ರ ಬರೆಯಿರಿ. ಯಾವುದೇ ಅನಗತ್ಯ ಫ್ರೇಮ್‌ವರ್ಕ್‌ಗಳನ್ನು ಬಳಸಬೇಡಿ. • ಅತಿಯಾದ ವ್ಯಾಪ್ತಿಯನ್ನು ಹೊಂದಬೇಡಿ (over-reach). ಅಗತ್ಯವಿರುವಷ್ಟನ್ನು ಮಾತ್ರ ಬದಲಾಯಿಸಿ. ಹತ್ತು ಸಾಲುಗಳ ಬದಲಾವಣೆಯು ಇನ್ನೂರು ಸಾಲುಗಳ diff ಆಗಿ ಬದಲಾಗಬಾರದು. • ವಿಭಿನ್ನ ಮಾದರಿಗಳನ್ನು ಬೆರೆಸಬೇಡಿ. ನೀವು ಎರಡು ವಿಭಿನ್ನ ಕೋಡಿಂಗ್ ಶೈಲಿಗಳನ್ನು ನೋಡಿದರೆ, ಅವುಗಳನ್ನು ಬೆರೆಸಬೇಡಿ. ಒಂದನ್ನು ಆರಿಸಿ ಮತ್ತು ಏಕೆ ಎಂಬುದನ್ನು ವಿವರಿಸಿ.

ಮಾರ್ಗದರ್ಶನ ಮತ್ತು ಜಾರಿಗೊಳಿಸುವಿಕೆಯ ನಡುವಿನ ವ್ಯತ್ಯಾಸ

ಮಾಡೆಲ್‌ಗಳು ಸೂಚನೆಗಳಿಂದ ಹೊರಬರಬಹುದು. ಮಾರ್ಕ್‌ಡೌನ್ ಫೈಲ್‌ನಲ್ಲಿರುವ ನಿಯಮವು ಕೇವಲ ಒಂದು ಸಲಹೆಯೇ ಹೊರತು ಒಪ್ಪಂದವಲ್ಲ.

ನಾನು ನನ್ನ ಫೈಲ್ ಅನ್ನು ಎರಡು ಹಂತಗಳಾಗಿ ವಿಂಗಡಿಸಿದ್ದೇನೆ:

  1. Guidance: ಶೈಲಿ ಮತ್ತು ತತ್ವಶಾಸ್ತ್ರ. ಇದು ವಿವರಣಾತ್ಮಕ ರೂಪದಲ್ಲಿರುತ್ತದೆ.
  2. Enforcement: ಕಟ್ಟುನಿಟ್ಟಿನ ಅವಶ್ಯಕತೆಗಳು. ಇವುಗಳನ್ನು ಫೈಲ್‌ನಲ್ಲಿ ಹಾಕಬೇಡಿ. ಇವುಗಳನ್ನು ಒಂದು CI ಚೆಕ್ ಅಥವಾ ಸ್ಕ್ರಿಪ್ಟ್‌ನಲ್ಲಿ ಇರಿಸಿ.

ಒಂದು ನಿಯಮವು ಪ್ರತಿ ಬಾರಿಯೂ ಪಾಲಾಗಬೇಕಿದ್ದರೆ, ಅದು ವಿಫಲವಾದರೆ ಮರ್ಜ್ (merge) ಮಾಡುವುದನ್ನು ಅಸಾಧ್ಯವಾಗಿಸಿ. ಒಂದು ಸೂಚನೆಯು ಕೇವಲ ಸೌಜನ್ಯವಾಗಿದೆ. ಆದರೆ ಒಂದು ಗೇಟ್ (gate) ಎಂಬುದು ಗ್ಯಾರಂಟಿ.

ಕ್ಲೈಮ್ ಅನ್ನು ನಂಬಬೇಡಿ, ಚೆಕ್ ಅನ್ನು ನಂಬಿ

ಏಜೆಂಟ್‌ಗಳು ಪರೀಕ್ಷೆಗಳು (tests) ಯಶಸ್ವಿಯಾಗಿವೆ ಎಂದು ನೆನಪಿನ ಆಧಾರದ ಮೇಲೆ ಹೇಳುತ್ತವೆ. ಅವು ಯಾವಾಗಲೂ ಪರೀಕ್ಷೆಗಳನ್ನು ಮರು-ಚಾಲನೆ ಮಾಡುವುದಿಲ್ಲ.

ಯಶಸ್ಸನ್ನು ಟೆಸ್ಟ್‌ಗಳ ಮೂಲಕವೇ ವ್ಯಾಖ್ಯಾನಿಸುವಂತೆ ನಾನು ನನ್ನ ಏಜೆಂಟ್‌ಗಳಿಗೆ ಹೇಳುತ್ತೇನೆ. "ಈ ಬಗ್ ಅನ್ನು ಸರಿಪಡಿಸಿ" ಎನ್ನುವ ಬದಲು, "ಈ ಬಗ್ ಅನ್ನು ಪುನರಾವರ್ತಿಸುವ ಒಂದು ಟೆಸ್ಟ್ ಬರೆಯಿರಿ, ನಂತರ ಅದನ್ನು ಯಶಸ್ವಿಗೊಳಿಸಿ" ಎಂದು ನಾನು ಹೇಳುತ್ತೇನೆ.

ಹೊಸದಾಗಿ ಪರಿಶೀಲಿಸದೆ ಯಾವುದೇ ಹೇಳಿಕೆಯನ್ನು ನಂಬಬೇಡಿ.

ಗಾಯಗಳ ದಾಖಲೆ (The Log of Scars)

ತಪ್ಪುಗಳಿಂದ ಕಲಿತ ಪಾಠಗಳಿಗಾಗಿ ನಾನು ಒಂದು ವಿಭಾಗವನ್ನು ಇಟ್ಟುಕೊಂಡಿದ್ದೇನೆ. ನಾನು ಇವುಗಳನ್ನು 'ಗಾಯಗಳು' (scars) ಎಂದು ಕರೆಯುತ್ತೇನೆ.

ಏಜೆಂಟ್‌ಗೆ ಹಿಂದಿನ ನೋವಿನ ನೆನಪಿರುವುದಿಲ್ಲ. ಅದು ಪ್ರತಿ ಬಾರಿಯೂ ಅದೇ ಮೈನ್‌ಫೀಲ್ಡ್‌ನಲ್ಲಿ ಸಿಲುಕಿಕೊಳ್ಳುತ್ತದೆ.

ನಿರ್ದಿಷ್ಟ ದೋಷಗಳು, ವಿಚಿತ್ರ API ವರ್ತನೆಗಳು ಮತ್ತು ಮೌನ ವೈಫಲ್ಯಗಳನ್ನು ಬರೆದಿಡಿ. ಈ ಅಪಾಯಗಳನ್ನು ಗುರುತಿಸುವುದು ನಿಮ್ಮ ಗಂಟೆಗಟ್ಟಲೆ ಸಮಯವನ್ನು ಉಳಿಸುತ್ತದೆ.

ಈ ಫೈಲ್‌ನ ಗುರಿ ನಿರ್ಧಾರ ತೆಗೆದುಕೊಳ್ಳುವ ಸಾಮರ್ಥ್ಯವನ್ನು (judgment) ದಾಖಲಿಸುವುದಾಗಿದೆ. ಫಾರ್ಮ್ಯಾಟಿಂಗ್ ನಿಯಮಗಳು ತಾವಾಗಿಯೇ ಬರೆಯಲ್ಪಡುತ್ತವೆ. ಆದರೆ ನಿರ್ಧಾರಗಳನ್ನು ಮಾತ್ರ ನೀವು ಬರೆಯಲೇಬೇಕು.

Source: https://dev.to/miteshethos/whats-actually-in-my-agentsmd-434e

Optional learning community: https://t.me/GyaanSetuAi