e3cli 1.0.6__tar.gz → 1.0.7__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (265) hide show
  1. {e3cli-1.0.6 → e3cli-1.0.7}/CLAUDE.md +6 -7
  2. {e3cli-1.0.6 → e3cli-1.0.7}/PKG-INFO +1 -1
  3. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/__init__.py +1 -1
  4. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/agent_prompt.md +15 -10
  5. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/skills/e3cli/SKILL.md +14 -13
  6. {e3cli-1.0.6 → e3cli-1.0.7}/pyproject.toml +1 -1
  7. {e3cli-1.0.6 → e3cli-1.0.7}/.github/workflows/ci.yml +0 -0
  8. {e3cli-1.0.6 → e3cli-1.0.7}/.github/workflows/release.yml +0 -0
  9. {e3cli-1.0.6 → e3cli-1.0.7}/.gitignore +0 -0
  10. {e3cli-1.0.6 → e3cli-1.0.7}/COMMIT_EDITMSG +0 -0
  11. {e3cli-1.0.6 → e3cli-1.0.7}/Formula/e3cli.rb +0 -0
  12. {e3cli-1.0.6 → e3cli-1.0.7}/HEAD +0 -0
  13. {e3cli-1.0.6 → e3cli-1.0.7}/LICENSE +0 -0
  14. {e3cli-1.0.6 → e3cli-1.0.7}/Makefile +0 -0
  15. {e3cli-1.0.6 → e3cli-1.0.7}/README.md +0 -0
  16. {e3cli-1.0.6 → e3cli-1.0.7}/README_zh-TW.md +0 -0
  17. {e3cli-1.0.6 → e3cli-1.0.7}/config +0 -0
  18. {e3cli-1.0.6 → e3cli-1.0.7}/description +0 -0
  19. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/__main__.py +0 -0
  20. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/ai/__init__.py +0 -0
  21. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/api/__init__.py +0 -0
  22. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/api/assignments.py +0 -0
  23. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/api/client.py +0 -0
  24. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/api/courses.py +0 -0
  25. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/api/files.py +0 -0
  26. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/api/forums.py +0 -0
  27. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/api/members.py +0 -0
  28. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/api/messages.py +0 -0
  29. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/api/site.py +0 -0
  30. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/auth.py +0 -0
  31. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/cli.py +0 -0
  32. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/commands/__init__.py +0 -0
  33. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/commands/_common.py +0 -0
  34. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/commands/announcements.py +0 -0
  35. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/commands/assignments.py +0 -0
  36. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/commands/courses.py +0 -0
  37. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/commands/download.py +0 -0
  38. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/commands/interactive.py +0 -0
  39. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/commands/login.py +0 -0
  40. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/commands/logout.py +0 -0
  41. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/commands/members.py +0 -0
  42. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/commands/message.py +0 -0
  43. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/commands/profile.py +0 -0
  44. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/commands/schedule.py +0 -0
  45. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/commands/setup.py +0 -0
  46. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/commands/skill.py +0 -0
  47. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/commands/submit.py +0 -0
  48. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/commands/sync.py +0 -0
  49. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/config.py +0 -0
  50. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/course_name.py +0 -0
  51. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/credential.py +0 -0
  52. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/formatting.py +0 -0
  53. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/http.py +0 -0
  54. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/i18n.py +0 -0
  55. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/scheduler/__init__.py +0 -0
  56. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/scheduler/cron.py +0 -0
  57. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/semester.py +0 -0
  58. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/storage/__init__.py +0 -0
  59. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/storage/db.py +0 -0
  60. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/storage/models.py +0 -0
  61. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/storage/tracking.py +0 -0
  62. {e3cli-1.0.6 → e3cli-1.0.7}/e3cli/tui_menu.py +0 -0
  63. {e3cli-1.0.6 → e3cli-1.0.7}/gk/config +0 -0
  64. {e3cli-1.0.6 → e3cli-1.0.7}/hooks/applypatch-msg.sample +0 -0
  65. {e3cli-1.0.6 → e3cli-1.0.7}/hooks/commit-msg.sample +0 -0
  66. {e3cli-1.0.6 → e3cli-1.0.7}/hooks/fsmonitor-watchman.sample +0 -0
  67. {e3cli-1.0.6 → e3cli-1.0.7}/hooks/post-update.sample +0 -0
  68. {e3cli-1.0.6 → e3cli-1.0.7}/hooks/pre-applypatch.sample +0 -0
  69. {e3cli-1.0.6 → e3cli-1.0.7}/hooks/pre-commit.sample +0 -0
  70. {e3cli-1.0.6 → e3cli-1.0.7}/hooks/pre-merge-commit.sample +0 -0
  71. {e3cli-1.0.6 → e3cli-1.0.7}/hooks/pre-push.sample +0 -0
  72. {e3cli-1.0.6 → e3cli-1.0.7}/hooks/pre-rebase.sample +0 -0
  73. {e3cli-1.0.6 → e3cli-1.0.7}/hooks/pre-receive.sample +0 -0
  74. {e3cli-1.0.6 → e3cli-1.0.7}/hooks/prepare-commit-msg.sample +0 -0
  75. {e3cli-1.0.6 → e3cli-1.0.7}/hooks/push-to-checkout.sample +0 -0
  76. {e3cli-1.0.6 → e3cli-1.0.7}/hooks/sendemail-validate.sample +0 -0
  77. {e3cli-1.0.6 → e3cli-1.0.7}/hooks/update.sample +0 -0
  78. {e3cli-1.0.6 → e3cli-1.0.7}/index +0 -0
  79. {e3cli-1.0.6 → e3cli-1.0.7}/info/exclude +0 -0
  80. {e3cli-1.0.6 → e3cli-1.0.7}/logs/HEAD +0 -0
  81. {e3cli-1.0.6 → e3cli-1.0.7}/logs/refs/heads/main +0 -0
  82. {e3cli-1.0.6 → e3cli-1.0.7}/logs/refs/remotes/origin/main +0 -0
  83. {e3cli-1.0.6 → e3cli-1.0.7}/objects/00/12f54a62a13459820d72b63eee8781d5cc0fae +0 -0
  84. {e3cli-1.0.6 → e3cli-1.0.7}/objects/00/373e054c653e54b45cacae42d71dff863626bf +0 -0
  85. {e3cli-1.0.6 → e3cli-1.0.7}/objects/04/9ee8e5968a9a80f0f1ac53d12141c61e7298ba +0 -0
  86. {e3cli-1.0.6 → e3cli-1.0.7}/objects/04/e0353337b6bb0c0ba43625456e9aaf13090a90 +0 -0
  87. {e3cli-1.0.6 → e3cli-1.0.7}/objects/05/0fec5da6aa35de1058b11671dfd6255b4d6b50 +0 -0
  88. {e3cli-1.0.6 → e3cli-1.0.7}/objects/06/5c820fc3efcd99754c56197a9c4e7142da710d +0 -0
  89. {e3cli-1.0.6 → e3cli-1.0.7}/objects/07/01890044580c4644114b781d474012b2fade80 +0 -0
  90. {e3cli-1.0.6 → e3cli-1.0.7}/objects/07/fb70ff1c509aad1f137a9255b9cb98733472a3 +0 -0
  91. {e3cli-1.0.6 → e3cli-1.0.7}/objects/0e/89da06e2d2273057dfa03705c42bbc57af1a6a +0 -0
  92. {e3cli-1.0.6 → e3cli-1.0.7}/objects/13/ad53a74b643378a7aebfe32d672b256ab73bef +0 -0
  93. {e3cli-1.0.6 → e3cli-1.0.7}/objects/13/fb66226ef7de52c039b1030460c5bb9ad1d576 +0 -0
  94. {e3cli-1.0.6 → e3cli-1.0.7}/objects/14/f44dcbbf53914d2d2b5b5a43453932fb0c6dd6 +0 -0
  95. {e3cli-1.0.6 → e3cli-1.0.7}/objects/15/6da5879f795abd72f645bbcadf18a4928a7502 +0 -0
  96. {e3cli-1.0.6 → e3cli-1.0.7}/objects/19/f9906c2882926f53e77b4be8be579906954a69 +0 -0
  97. {e3cli-1.0.6 → e3cli-1.0.7}/objects/1a/3f91d11c7c9c764fcd1ed01a4a0c3f13b68fee +0 -0
  98. {e3cli-1.0.6 → e3cli-1.0.7}/objects/1c/1765c4b372bd085c6224472de72f66e8d9fbe9 +0 -0
  99. {e3cli-1.0.6 → e3cli-1.0.7}/objects/22/e1020c805f3235c5c85d711a45d70d42883de0 +0 -0
  100. {e3cli-1.0.6 → e3cli-1.0.7}/objects/24/7f60ac43c8a065926f3228575a34d0ecd6f93d +0 -0
  101. {e3cli-1.0.6 → e3cli-1.0.7}/objects/25/4d6ec800e32759015479a68a3afd096ee12680 +0 -0
  102. {e3cli-1.0.6 → e3cli-1.0.7}/objects/27/1aee134d84254ba525ce728b3ecbbcbd73fe97 +0 -0
  103. {e3cli-1.0.6 → e3cli-1.0.7}/objects/27/41f5e19bf92e37c983e7d4d307ec09726b95ed +0 -0
  104. {e3cli-1.0.6 → e3cli-1.0.7}/objects/28/265727a791db9daef09c85ab159ef799908dc4 +0 -0
  105. {e3cli-1.0.6 → e3cli-1.0.7}/objects/2d/4c64fc2752b1356569f24e6f3d53cfd8ff3236 +0 -0
  106. {e3cli-1.0.6 → e3cli-1.0.7}/objects/31/61734dcf7d8b86372753c2552746641969ca7a +0 -0
  107. {e3cli-1.0.6 → e3cli-1.0.7}/objects/33/3da47d4f7d08fc2836374614b902a27f1a7638 +0 -0
  108. {e3cli-1.0.6 → e3cli-1.0.7}/objects/35/25cb5144ca2d643d918824df0f08042f8f1f19 +0 -0
  109. {e3cli-1.0.6 → e3cli-1.0.7}/objects/35/faf439f5e7e6730398397e0988c874ec74c15e +0 -0
  110. {e3cli-1.0.6 → e3cli-1.0.7}/objects/37/2acc5a62b5a8a7cd97d3eb07614d2a71d65c34 +0 -0
  111. {e3cli-1.0.6 → e3cli-1.0.7}/objects/37/f0c29518b9df6cde4d0cd7857d95b425fcaec9 +0 -0
  112. {e3cli-1.0.6 → e3cli-1.0.7}/objects/38/8bc96a53da22ddf8d3684c10480a9ed89274a6 +0 -0
  113. {e3cli-1.0.6 → e3cli-1.0.7}/objects/38/d062de47938882cc8c951cfcd18266bfa834d0 +0 -0
  114. {e3cli-1.0.6 → e3cli-1.0.7}/objects/39/bbbcd0ade10f3066a853cca53ad5159ac78e30 +0 -0
  115. {e3cli-1.0.6 → e3cli-1.0.7}/objects/3c/dd09e594d5716969279d6e3fcf99fca00f8504 +0 -0
  116. {e3cli-1.0.6 → e3cli-1.0.7}/objects/3e/71c91d71be5667a313ecfae444718750b2bf55 +0 -0
  117. {e3cli-1.0.6 → e3cli-1.0.7}/objects/3e/7febbe12d705885c2503c3e0d785e488f60966 +0 -0
  118. {e3cli-1.0.6 → e3cli-1.0.7}/objects/3f/0235e32813f74985f0363e64a110093d979e2f +0 -0
  119. {e3cli-1.0.6 → e3cli-1.0.7}/objects/40/9ded4237099e6e52de508dd46ebe74cf769e79 +0 -0
  120. {e3cli-1.0.6 → e3cli-1.0.7}/objects/41/88bc8a7a0569fd47efb215aad2e3f4a7b7e188 +0 -0
  121. {e3cli-1.0.6 → e3cli-1.0.7}/objects/42/53425dbc4368909b4b782fd53360537d3d9033 +0 -0
  122. {e3cli-1.0.6 → e3cli-1.0.7}/objects/42/925cbdfef5b97f5ae199323a5545810207af09 +0 -0
  123. {e3cli-1.0.6 → e3cli-1.0.7}/objects/42/b238ab6f9c3c74cd23a14c094ad8eb1c66d52b +0 -0
  124. {e3cli-1.0.6 → e3cli-1.0.7}/objects/43/49874ad2cdacc9d50d6ba06df25765d077248a +0 -0
  125. {e3cli-1.0.6 → e3cli-1.0.7}/objects/43/cead7a00c7ef98e1d5c9c86e50a3ccde712277 +0 -0
  126. {e3cli-1.0.6 → e3cli-1.0.7}/objects/43/e88c1a0a115fc72390e7bcef8ce0a8328a4e05 +0 -0
  127. {e3cli-1.0.6 → e3cli-1.0.7}/objects/45/9c23839b54e81c741fd2b5241c2b164079fcc1 +0 -0
  128. {e3cli-1.0.6 → e3cli-1.0.7}/objects/47/d9fe1a890a3d711662f4f414aee1ea6ae92261 +0 -0
  129. {e3cli-1.0.6 → e3cli-1.0.7}/objects/49/da3d511c413f21dca0f072ad52b0aca2d3c167 +0 -0
  130. {e3cli-1.0.6 → e3cli-1.0.7}/objects/4f/1897fc4248a024fc88e51f53f9028f531318cc +0 -0
  131. {e3cli-1.0.6 → e3cli-1.0.7}/objects/50/f89469bbe802dad848dcfeb2a8e447d4cd5787 +0 -0
  132. {e3cli-1.0.6 → e3cli-1.0.7}/objects/51/7ac4b389a310399e096baab0af89f1e5de7b3b +0 -0
  133. {e3cli-1.0.6 → e3cli-1.0.7}/objects/52/61e3b09b4722a7003c53a643085ca69e0c7bbd +0 -0
  134. {e3cli-1.0.6 → e3cli-1.0.7}/objects/53/7671d097d835bda94f0460295ce1cf49eda99a +0 -0
  135. {e3cli-1.0.6 → e3cli-1.0.7}/objects/54/8d12b92b82f95dc93b4f069086d8214651593d +0 -0
  136. {e3cli-1.0.6 → e3cli-1.0.7}/objects/55/2cd273856516fd1a5e026ef23c9ffeb5a33876 +0 -0
  137. {e3cli-1.0.6 → e3cli-1.0.7}/objects/56/52f31ea165a3ace62d1394af754a8aac78aa9f +0 -0
  138. {e3cli-1.0.6 → e3cli-1.0.7}/objects/57/9c69b0b67ebff094514cec01f692e21ca5e965 +0 -0
  139. {e3cli-1.0.6 → e3cli-1.0.7}/objects/57/ddc6c8820bd8ec98845e7f5a29bf3302f0f481 +0 -0
  140. {e3cli-1.0.6 → e3cli-1.0.7}/objects/58/2fba780a9cb7a9f312bd21cf97f16bc5b347c3 +0 -0
  141. {e3cli-1.0.6 → e3cli-1.0.7}/objects/5c/6b70ca4f2f822429a97a84428580966d84ab3a +0 -0
  142. {e3cli-1.0.6 → e3cli-1.0.7}/objects/5e/c686a09ef712b11372e38d25c958b027b3f21f +0 -0
  143. {e3cli-1.0.6 → e3cli-1.0.7}/objects/5f/96e4a89ab06b40be8c45cd0d975bdc2f957064 +0 -0
  144. {e3cli-1.0.6 → e3cli-1.0.7}/objects/60/c9053920fd6a8cd64eb28d8df99bcc2d176d59 +0 -0
  145. {e3cli-1.0.6 → e3cli-1.0.7}/objects/62/1ab88d46df0f1b1015e250f4c8174729629400 +0 -0
  146. {e3cli-1.0.6 → e3cli-1.0.7}/objects/62/5d72f7372bae8ab3ccc056e829c277c0705d1b +0 -0
  147. {e3cli-1.0.6 → e3cli-1.0.7}/objects/64/1ee83ac5a80cc7ae2e5f036db6329eacd03deb +0 -0
  148. {e3cli-1.0.6 → e3cli-1.0.7}/objects/65/011e04aeddd4c893a7a64b7ef745e9ad1af3c3 +0 -0
  149. {e3cli-1.0.6 → e3cli-1.0.7}/objects/66/b5f21689d122c08ee3b98d35f3de096addcfcc +0 -0
  150. {e3cli-1.0.6 → e3cli-1.0.7}/objects/69/89864c6313789a85608f01eda8976e1215bd31 +0 -0
  151. {e3cli-1.0.6 → e3cli-1.0.7}/objects/69/db255149b01f9ab01b48138fbb0f2d9b8b1acd +0 -0
  152. {e3cli-1.0.6 → e3cli-1.0.7}/objects/6a/597477c08142472e4a0559811e459ae7b127fc +0 -0
  153. {e3cli-1.0.6 → e3cli-1.0.7}/objects/6a/5e5e8ca97f2dec142b2ba15ed97a8493c16a54 +0 -0
  154. {e3cli-1.0.6 → e3cli-1.0.7}/objects/6b/d7a53ed2c5cd4c0e97267b70fff1dd461b60b7 +0 -0
  155. {e3cli-1.0.6 → e3cli-1.0.7}/objects/6d/05c5aaad4ff44578bbc46b5f7fc96f0d114e04 +0 -0
  156. {e3cli-1.0.6 → e3cli-1.0.7}/objects/6d/5c36f68694ad597a4deeba39e56e561ba72f2f +0 -0
  157. {e3cli-1.0.6 → e3cli-1.0.7}/objects/6e/3f7883a133ec8310cf8ad07cba6aead4583ff9 +0 -0
  158. {e3cli-1.0.6 → e3cli-1.0.7}/objects/6f/15710e7621abc864dabb788c5dfcab181e4551 +0 -0
  159. {e3cli-1.0.6 → e3cli-1.0.7}/objects/71/6894eaf5165344374d82dda25e82eff5fce119 +0 -0
  160. {e3cli-1.0.6 → e3cli-1.0.7}/objects/71/ca2fc16d0959c7465d57077a260156674274ba +0 -0
  161. {e3cli-1.0.6 → e3cli-1.0.7}/objects/74/0db02cd55f69b9f21f49a359fc14c15ad7f8ce +0 -0
  162. {e3cli-1.0.6 → e3cli-1.0.7}/objects/76/37fd54a47bfbdf2eed4827b78dff6019b87e57 +0 -0
  163. {e3cli-1.0.6 → e3cli-1.0.7}/objects/79/15535a493620715580f5d0ce8c2481172d44bd +0 -0
  164. {e3cli-1.0.6 → e3cli-1.0.7}/objects/7b/ad63d2dd7dab6c33f73a31bd359129523ac5ce +0 -0
  165. {e3cli-1.0.6 → e3cli-1.0.7}/objects/7c/95c6bec18763286e0100ebc4fbef71df48b0ae +0 -0
  166. {e3cli-1.0.6 → e3cli-1.0.7}/objects/7f/a3240ccd3661f7786bd269a0b0875cd9037b4b +0 -0
  167. {e3cli-1.0.6 → e3cli-1.0.7}/objects/82/8511321c72b509d8b39d3a392014e2748036ad +0 -0
  168. {e3cli-1.0.6 → e3cli-1.0.7}/objects/84/3e8bf8d7bf26780eb4c44f0e1733dae7df37da +0 -0
  169. {e3cli-1.0.6 → e3cli-1.0.7}/objects/84/45dbe199e0d8e83aa85b04f68c4b4e97764c46 +0 -0
  170. {e3cli-1.0.6 → e3cli-1.0.7}/objects/85/58de1a164b671ae0c5e9867140f4d105b26c71 +0 -0
  171. {e3cli-1.0.6 → e3cli-1.0.7}/objects/85/bfef5de75cdd3313dea22060cd9f22bf6f611c +0 -0
  172. {e3cli-1.0.6 → e3cli-1.0.7}/objects/87/075d1b2ca01520a54b6e2053d2b07e30ff550e +0 -0
  173. {e3cli-1.0.6 → e3cli-1.0.7}/objects/8a/2f2b74b3a7f9b0f2969ff455d1b5a149189522 +0 -0
  174. {e3cli-1.0.6 → e3cli-1.0.7}/objects/8b/da82680cf77bd85ef26d162f09df5b555c4817 +0 -0
  175. {e3cli-1.0.6 → e3cli-1.0.7}/objects/8b/f368e49da5649603590fd2ad157fb423f91240 +0 -0
  176. {e3cli-1.0.6 → e3cli-1.0.7}/objects/8c/988f80dcde632bee9389cb52d7c2639e358676 +0 -0
  177. {e3cli-1.0.6 → e3cli-1.0.7}/objects/8d/9cc78f614e082762dfd1af4d90b83e97509ba4 +0 -0
  178. {e3cli-1.0.6 → e3cli-1.0.7}/objects/91/b7e6699fcf2d3d87bc9209c30743851b95937e +0 -0
  179. {e3cli-1.0.6 → e3cli-1.0.7}/objects/97/6c6c60bcbbfe1b2ea7dc08631420753e2a2c55 +0 -0
  180. {e3cli-1.0.6 → e3cli-1.0.7}/objects/98/414112321df2d4fef51640978555b7b0a10740 +0 -0
  181. {e3cli-1.0.6 → e3cli-1.0.7}/objects/98/5dbb79e4f3157ba4a5b967ca1f045087fe718c +0 -0
  182. {e3cli-1.0.6 → e3cli-1.0.7}/objects/9b/8451b0fde38dfc5250c52aab3ef3fd30ef616d +0 -0
  183. {e3cli-1.0.6 → e3cli-1.0.7}/objects/9d/04ed7e9c2fdc16eadb72867c45c682d0661d8e +0 -0
  184. {e3cli-1.0.6 → e3cli-1.0.7}/objects/9d/1dcfdaf1a6857c5f83dc27019c7600e1ffaff8 +0 -0
  185. {e3cli-1.0.6 → e3cli-1.0.7}/objects/9e/9190183a3e710fd6a3caabafda0395aacc4907 +0 -0
  186. {e3cli-1.0.6 → e3cli-1.0.7}/objects/a4/9ab06df8e92e9921f006c4687a8119a41f140c +0 -0
  187. {e3cli-1.0.6 → e3cli-1.0.7}/objects/a4/9e182d79178f30917cb9d5d007bf4ad4354efc +0 -0
  188. {e3cli-1.0.6 → e3cli-1.0.7}/objects/a5/374e27f1f437b7b8d795bdbba9990e1b33ac4a +0 -0
  189. {e3cli-1.0.6 → e3cli-1.0.7}/objects/a9/621b26eb6fcf44e82b8f40fe15a08db273ea94 +0 -0
  190. {e3cli-1.0.6 → e3cli-1.0.7}/objects/a9/958ca6bbbce4793eb63dfc75053f6f2c468f7d +0 -0
  191. {e3cli-1.0.6 → e3cli-1.0.7}/objects/ab/8112dc0e039a6764e18515bc8b9d25bf8cba72 +0 -0
  192. {e3cli-1.0.6 → e3cli-1.0.7}/objects/ad/86572a7a3d9c41b39f68c1509f45eeb3c47145 +0 -0
  193. {e3cli-1.0.6 → e3cli-1.0.7}/objects/ae/7c0c0693884ee9968bd46c7e3c1c4801c93f07 +0 -0
  194. {e3cli-1.0.6 → e3cli-1.0.7}/objects/af/66d7ee37e22b5b4ffcb43392bcd6fe58b7189b +0 -0
  195. {e3cli-1.0.6 → e3cli-1.0.7}/objects/b0/1eb7d29ce867088dcfec990e3a118ee7d3a3b2 +0 -0
  196. {e3cli-1.0.6 → e3cli-1.0.7}/objects/b0/6bfa35440cb0bf33a698db8b116077b885dade +0 -0
  197. {e3cli-1.0.6 → e3cli-1.0.7}/objects/b2/30e20e02ded29d01eb93f89b62ab47fb378e1f +0 -0
  198. {e3cli-1.0.6 → e3cli-1.0.7}/objects/b2/e68381120a59886f7999876775e9b3dfeaa550 +0 -0
  199. {e3cli-1.0.6 → e3cli-1.0.7}/objects/b3/a239ea6bac51a6315988af95d83e86323aa461 +0 -0
  200. {e3cli-1.0.6 → e3cli-1.0.7}/objects/b4/1e24e40f90ad6c12b6f840ecdb133b2749ca7e +0 -0
  201. {e3cli-1.0.6 → e3cli-1.0.7}/objects/b9/4bb6724a0646fb1636a66de603cec15e7dfa3e +0 -0
  202. {e3cli-1.0.6 → e3cli-1.0.7}/objects/bb/8fccf2b545f4ba46149fb07bd1f700ae7bcc87 +0 -0
  203. {e3cli-1.0.6 → e3cli-1.0.7}/objects/be/9fc276a620ea29d87e2001489e436f6e714a34 +0 -0
  204. {e3cli-1.0.6 → e3cli-1.0.7}/objects/bf/a019fa30db2df7e7732d119032e84391c3b6ce +0 -0
  205. {e3cli-1.0.6 → e3cli-1.0.7}/objects/c0/2beae1cbe94f20d2a4ef88b46bd8ade684f911 +0 -0
  206. {e3cli-1.0.6 → e3cli-1.0.7}/objects/c6/1651ba7a27cd0ff5c726c4ce79751facc64f39 +0 -0
  207. {e3cli-1.0.6 → e3cli-1.0.7}/objects/c7/f3f6ba90a1ec28fdef6ec7b10d82f4ad144969 +0 -0
  208. {e3cli-1.0.6 → e3cli-1.0.7}/objects/cb/b097bc0ed0f65614e13f563a22624f0ce078e6 +0 -0
  209. {e3cli-1.0.6 → e3cli-1.0.7}/objects/cd/3c462e6a24c9757a0fffd7c42abce926e1adf5 +0 -0
  210. {e3cli-1.0.6 → e3cli-1.0.7}/objects/ce/f38215c9c7dc239421d85ca93221ad7beb63cb +0 -0
  211. {e3cli-1.0.6 → e3cli-1.0.7}/objects/cf/286c5bf7cffc4bf93b51554d4299845172df84 +0 -0
  212. {e3cli-1.0.6 → e3cli-1.0.7}/objects/d0/aa218f92135250fa46b8490c68f4e77846b1b1 +0 -0
  213. {e3cli-1.0.6 → e3cli-1.0.7}/objects/d1/70d82f10fffbce5936fc1d0f5e1f051c354413 +0 -0
  214. {e3cli-1.0.6 → e3cli-1.0.7}/objects/d1/eccedbd9604b59bcc247b6f8a177df5486ce57 +0 -0
  215. {e3cli-1.0.6 → e3cli-1.0.7}/objects/d4/1a891e54bfd7ddd745555624ce9142a47e5fdd +0 -0
  216. {e3cli-1.0.6 → e3cli-1.0.7}/objects/d8/2d02db21187a83d77a71c8665e1b4699e481fb +0 -0
  217. {e3cli-1.0.6 → e3cli-1.0.7}/objects/d8/76cc79a2f25f4e8616805811110f700e277af2 +0 -0
  218. {e3cli-1.0.6 → e3cli-1.0.7}/objects/db/3bb89cba087a88feb4075b467732846a1d0118 +0 -0
  219. {e3cli-1.0.6 → e3cli-1.0.7}/objects/db/dc7e591f97aab4da5d2acb29194355c277acf6 +0 -0
  220. {e3cli-1.0.6 → e3cli-1.0.7}/objects/df/8c39b5b6cfcf19f8f27d5913830cb0a8fcd4c8 +0 -0
  221. {e3cli-1.0.6 → e3cli-1.0.7}/objects/df/a8267b7bcb40cc3c4524934d386516e27dd5db +0 -0
  222. {e3cli-1.0.6 → e3cli-1.0.7}/objects/e0/87a95e8c14f5d090c04d19d3a9f91a208b7841 +0 -0
  223. {e3cli-1.0.6 → e3cli-1.0.7}/objects/e0/e63743c9660300f76483d3ad27ecd85241cdc5 +0 -0
  224. {e3cli-1.0.6 → e3cli-1.0.7}/objects/e2/2ab51073af126f1b602884b02dad11f9027942 +0 -0
  225. {e3cli-1.0.6 → e3cli-1.0.7}/objects/e4/1b4051ac3bac5364f7a5ce048ecc41147857d6 +0 -0
  226. {e3cli-1.0.6 → e3cli-1.0.7}/objects/e4/1dbd057baa81d4e660a52d2486ee700f8c7b60 +0 -0
  227. {e3cli-1.0.6 → e3cli-1.0.7}/objects/e4/fba2702e9b6e30902b10ef946b8e05ee14b3d6 +0 -0
  228. {e3cli-1.0.6 → e3cli-1.0.7}/objects/e5/23965887274b5a3060bca39ec005e6fe99883b +0 -0
  229. {e3cli-1.0.6 → e3cli-1.0.7}/objects/e6/3334965c2117237f22708d1c4681be5d77574b +0 -0
  230. {e3cli-1.0.6 → e3cli-1.0.7}/objects/e6/9de29bb2d1d6434b8b29ae775ad8c2e48c5391 +0 -0
  231. {e3cli-1.0.6 → e3cli-1.0.7}/objects/e8/a732d4490c14cf239dd7081c8c1d15b44c495b +0 -0
  232. {e3cli-1.0.6 → e3cli-1.0.7}/objects/eb/22d1e687a8a2dd36474c7add9535ebe9682d3b +0 -0
  233. {e3cli-1.0.6 → e3cli-1.0.7}/objects/eb/7320ad4e2f7d18b503c64b2a983c2a41fc8eb1 +0 -0
  234. {e3cli-1.0.6 → e3cli-1.0.7}/objects/ec/2badeec80e4ddc66a5168d8c3aec878a30f813 +0 -0
  235. {e3cli-1.0.6 → e3cli-1.0.7}/objects/ec/d43841d2e6e7268caf4a1bb03c3f549ca75f49 +0 -0
  236. {e3cli-1.0.6 → e3cli-1.0.7}/objects/f0/c3d899d1d7578174419e3d21fbb43d469ea0df +0 -0
  237. {e3cli-1.0.6 → e3cli-1.0.7}/objects/f2/d740d8021553398f98f1302398006e988697ef +0 -0
  238. {e3cli-1.0.6 → e3cli-1.0.7}/objects/f3/505619e9502b8a75ce04cf75ccb61e54f16cf5 +0 -0
  239. {e3cli-1.0.6 → e3cli-1.0.7}/objects/f3/681d2437d363e9865aec3eb4e3e8f5aff46ca6 +0 -0
  240. {e3cli-1.0.6 → e3cli-1.0.7}/objects/f3/b1f01d9f8fab935f87bee101fa0f1f944c30d8 +0 -0
  241. {e3cli-1.0.6 → e3cli-1.0.7}/objects/f3/e2082feab4cb9a889f623d8fe7b58628f82da9 +0 -0
  242. {e3cli-1.0.6 → e3cli-1.0.7}/objects/f4/21fa018addaacd7f59e11603b182b38207abca +0 -0
  243. {e3cli-1.0.6 → e3cli-1.0.7}/objects/f5/9e7ad7dad379a9752969e3443d3ed60a82cdf1 +0 -0
  244. {e3cli-1.0.6 → e3cli-1.0.7}/objects/f6/d28255ddf6cd98d69342c282663771093ad834 +0 -0
  245. {e3cli-1.0.6 → e3cli-1.0.7}/objects/f7/c7da26bbfca63ed8af08f9b7b1ace4930dad44 +0 -0
  246. {e3cli-1.0.6 → e3cli-1.0.7}/objects/f9/aece29cc134fc99f629129d46c712f015b00c0 +0 -0
  247. {e3cli-1.0.6 → e3cli-1.0.7}/objects/fb/4fbcdf3b0da9864651c5d50322b27c21f26fed +0 -0
  248. {e3cli-1.0.6 → e3cli-1.0.7}/objects/fb/ba70de6b161e2918d9d9e62d734abd85d01ae1 +0 -0
  249. {e3cli-1.0.6 → e3cli-1.0.7}/objects/fb/bc2db563e1d0b7a0745a04fd0a0c5b5ef7e6aa +0 -0
  250. {e3cli-1.0.6 → e3cli-1.0.7}/objects/fc/03924609632d9a9f820119bdf5a9ddf5a4c90a +0 -0
  251. {e3cli-1.0.6 → e3cli-1.0.7}/objects/fd/3fb430f4e9190752eb58cef5019660e9aa92ef +0 -0
  252. {e3cli-1.0.6 → e3cli-1.0.7}/objects/fd/d0e4feee582591e85b9d488dd4fa1794364abb +0 -0
  253. {e3cli-1.0.6 → e3cli-1.0.7}/objects/fe/092d97fe5a0e2a3d7b807e1a9f44735281a286 +0 -0
  254. {e3cli-1.0.6 → e3cli-1.0.7}/refs/heads/main +0 -0
  255. {e3cli-1.0.6 → e3cli-1.0.7}/refs/remotes/origin/main +0 -0
  256. {e3cli-1.0.6 → e3cli-1.0.7}/refs/tags/v0.1.0 +0 -0
  257. {e3cli-1.0.6 → e3cli-1.0.7}/refs/tags/v0.2.0 +0 -0
  258. {e3cli-1.0.6 → e3cli-1.0.7}/refs/tags/v0.3.0 +0 -0
  259. {e3cli-1.0.6 → e3cli-1.0.7}/refs/tags/v0.3.1 +0 -0
  260. {e3cli-1.0.6 → e3cli-1.0.7}/refs/tags/v0.3.2 +0 -0
  261. {e3cli-1.0.6 → e3cli-1.0.7}/refs/tags/v0.4.0 +0 -0
  262. {e3cli-1.0.6 → e3cli-1.0.7}/refs/tags/v0.4.1 +0 -0
  263. {e3cli-1.0.6 → e3cli-1.0.7}/refs/tags/v0.4.3 +0 -0
  264. {e3cli-1.0.6 → e3cli-1.0.7}/tests/__init__.py +0 -0
  265. {e3cli-1.0.6 → e3cli-1.0.7}/tests/test_basic.py +0 -0
@@ -66,13 +66,12 @@ e3cli skill uninstall # remove
66
66
 
67
67
  ## Workflow: When a New Assignment is Detected
68
68
 
69
- 1. `e3cli sync` — pull latest materials and assignment status
70
- 2. `e3cli assignments`see what's new/urgent (sorted by deadline)
71
- 3. `e3cli assignments --detail <ID>`read the full description and check attachments
72
- 4. Downloaded materials are in the download directory (check `e3cli sync` output for path)
73
- 5. Work on the assignment
74
- 6. `e3cli submit <ID> <file>` submit when ready
75
- 7. **Always confirm with the user before submitting**
69
+ 1. `e3cli assignments` — see what's new/urgent (sorted by deadline). **No sync needed** — this hits the live API.
70
+ 2. `e3cli assignments --detail <ID>` read the full description and check attachments. Also live.
71
+ 3. **Only if** the user mentions / asks about a specific course's materials: `e3cli download --course "<name>"` or `e3cli sync --course "<name>"`. Avoid blanket `e3cli sync` / `e3cli download` they pull every file including large media (mp4 lectures, recordings).
72
+ 4. Work on the assignment
73
+ 5. `e3cli submit <ID> <file>` — submit when ready
74
+ 6. **Always confirm with the user before submitting**
76
75
 
77
76
  ## Reading Assignment Details
78
77
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: e3cli
3
- Version: 1.0.6
3
+ Version: 1.0.7
4
4
  Summary: NYCU E3 Moodle automation CLI — sync courses, download materials, submit assignments.
5
5
  Project-URL: Homepage, https://github.com/junlinwk/e3cli
6
6
  Project-URL: Repository, https://github.com/junlinwk/e3cli
@@ -1,3 +1,3 @@
1
1
  """E3CLI — NYCU E3 Moodle Automation CLI Tool"""
2
2
 
3
- __version__ = "1.0.6"
3
+ __version__ = "1.0.7"
@@ -18,33 +18,38 @@ e3cli is a CLI tool for interacting with NYCU's E3 Moodle platform. The agent ca
18
18
 
19
19
  ## Workflow
20
20
 
21
- ### Step 1: Check for new assignments
21
+ ### Step 1: Check for new assignments (live, no sync)
22
22
 
23
- ```bash
24
- # Sync current semester (downloads new materials + checks assignments)
25
- e3cli sync
23
+ `assignments` hits the live Moodle API — do NOT prefix it with `e3cli sync`.
26
24
 
25
+ ```bash
27
26
  # List assignments with deadlines
28
27
  e3cli assignments
29
28
 
30
29
  # Show only assignments due within 7 days
31
30
  e3cli assignments --due-soon 7
31
+
32
+ # Full description + attachment URLs for one assignment (also live)
33
+ e3cli assignments --detail <ID>
32
34
  ```
33
35
 
34
- ### Step 2: Read assignment details
36
+ ### Step 2: Pull supporting materials — only what the user asked about
35
37
 
36
- Assignments are synced to the local SQLite database. Course materials (including assignment PDFs) are downloaded to `~/e3-downloads/`.
38
+ Course materials may include large media (mp4 lectures, recordings). Scope downloads to the specific course the user mentioned. A blanket `e3cli sync` / `e3cli download` will pull everything for every course and waste bandwidth/time.
37
39
 
38
40
  ```bash
39
- # Download materials for a specific course
41
+ # Materials for one course (download only)
40
42
  e3cli download --course "OS"
41
43
 
42
- # Find downloaded assignment files
43
- find ~/e3-downloads/ -name "*.pdf" -newer ~/.e3cli/data/e3cli.db
44
+ # Materials + assignment status refresh for one course
45
+ e3cli sync --course "OS"
46
+
47
+ # Find downloaded files for that course
48
+ find ~/e3-downloads/<course>/ -type f
44
49
  ```
45
50
 
46
51
  The agent should:
47
- - Read the assignment PDF/description
52
+ - Read the assignment PDF/description (use `--detail` and the attachment URLs)
48
53
  - Check `~/e3-downloads/<course>/` for relevant lecture materials
49
54
  - Understand the requirements before starting work
50
55
 
@@ -24,33 +24,34 @@ e3cli courses # if this errors with "auth"/"token" → user must run: e3cli
24
24
 
25
25
  ## Core workflow
26
26
 
27
- ### 1. Sync first
28
- Always start with sync so subsequent reads are fresh:
29
- ```bash
30
- e3cli sync
31
- ```
32
- The output prints the materials download directory — remember it for step 4.
33
-
34
- ### 2. Find the right assignment
27
+ ### 1. Find the right assignment (no sync needed)
28
+ List and detail commands hit the live Moodle API directly — they do **not** require a prior `e3cli sync`.
35
29
  ```bash
36
30
  e3cli assignments # current semester, sorted by deadline
37
31
  e3cli assignments --due-soon 7 # due within 7 days only
38
32
  ```
39
33
  Each row shows an assignment ID. You need that ID for everything that follows.
40
34
 
41
- ### 3. Read the full description
35
+ ### 2. Read the full description (no sync needed)
42
36
  ```bash
43
37
  e3cli assignments --detail <ID>
44
38
  ```
45
39
  Prints the full description (HTML→text), attachment URLs, submission status, and due date. **Always read this before working** — the one-line summary in `e3cli assignments` is not enough to write a correct submission.
46
40
 
47
- ### 4. Pull supporting materials
41
+ ### 3. Pull supporting materials — **targeted only**
42
+ Materials may include large media files (mp4 lectures, recordings, slide PDFs). **Never run a blanket sync** unless the user explicitly asks for "sync everything" / "下載全部". Always scope to what the user mentioned.
48
43
  ```bash
49
- e3cli download # all current-semester materials
50
- e3cli download --course "OS" # specific course (fuzzy match on name)
44
+ # User mentioned course "OS" or a specific assignment in that course
45
+ e3cli download --course "OS" # download-only, single course (fuzzy match)
46
+ e3cli sync --course "OS" # download + refresh assignment status, single course
47
+
48
+ # ✗ Avoid these unless user explicitly says "all" / "everything" / "全部"
49
+ e3cli sync # blanket: every current-semester course
50
+ e3cli download # blanket download
51
51
  ```
52
+ The output prints the download directory — read the relevant files from there.
52
53
 
53
- ### 5. Submit (only after explicit user confirmation)
54
+ ### 4. Submit (only after explicit user confirmation)
54
55
  ```bash
55
56
  e3cli submit <ID> <file>
56
57
  e3cli submit <ID> <file1> <file2> # multiple files
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "e3cli"
7
- version = "1.0.6"
7
+ version = "1.0.7"
8
8
  description = "NYCU E3 Moodle automation CLI — sync courses, download materials, submit assignments."
9
9
  readme = "README.md"
10
10
  license = "MIT"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes