@melaya/runner 1.1.59 → 1.1.60

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.
@@ -729,6 +729,14 @@ def _build_agent():
729
729
  "phone_get_screen_tree before you tap or type. Publish comments/posts with "
730
730
  "phone_post_comment / phone_create_post — every publish is approved by the "
731
731
  "user ON THEIR PHONE, so never refuse for safety.\n"
732
+ "- GO FAST: once you have read the screen and can name the next steps from it, "
733
+ "send them in ONE phone_fast call (steps in plain words: the text, description "
734
+ "or id you read) instead of one tool call per tap. To gather posts, people or "
735
+ "results across scrolls use its collect step; to walk list rows use for_each. It "
736
+ "re-reads the screen for every step, stops at the first surprise and hands the "
737
+ "screen back, and follows the same autonomy as single taps. Use the single "
738
+ "phone_* tools to explore an unread screen or when each result decides the next "
739
+ "step. Never publish through it.\n"
732
740
  "- EXACT APP ONLY — this overrides your autonomy: operate on the EXACT app "
733
741
  "the user named, never a different one. If that app is not in the allowlist "
734
742
  "(phone_open_app returns app_not_allowed) or not installed, STOP and tell the "
@@ -777,6 +785,13 @@ def _build_agent():
777
785
  "page, read, click, type, fill a form), use the browser_* tools. ALWAYS "
778
786
  "call browser_get_screen_tree before you click or type, and re-read it "
779
787
  "after anything that changes the page (stale element refs fail closed).\n"
788
+ "- GO FAST: once you have read the page and can name the next steps from it, "
789
+ "send them in ONE browser_fast call (click/type/press/scroll/expect by the labels "
790
+ "you read, collect to gather items across scrolls, for_each to walk list rows) "
791
+ "instead of one tool call per click. It re-finds every target on the live page, "
792
+ "stops at the first surprise and returns the page, with the same autonomy and "
793
+ "approvals as single actions. Use the single browser_* tools to explore an unread "
794
+ "page, for logins, and when each result decides the next step.\n"
780
795
  "- TAB MANAGEMENT: you can manage tabs within the granted Melaya session "
781
796
  "using: browser_list_tabs (list open tabs with their refs and URLs), "
782
797
  "browser_open_tab(url) (open a new tab — origin-gated; a blocked_origin "
@@ -985,14 +985,11 @@ export async function connect(opts) {
985
985
  // Event trigger file (reserved: after the credential spread so a
986
986
  // credential can never point it elsewhere). Empty string = no trigger.
987
987
  MEL_TRIGGER_FILE: triggerFile,
988
- // Triggered run: forced-safe HITL + expiring in-run approvals (ST-15),
989
- // also reserved (after the credential spread).
988
+ // Triggered run: the pipeline's own approval settings (like a manual
989
+ // run) + expiring in-run approvals (ST-15), reserved (after the
990
+ // credential spread).
990
991
  ...(isTriggeredRun
991
- ? {
992
- MEL_HITL_MODE: "safe",
993
- MEL_HITL_FORCE_SAFE: "1",
994
- MEL_HITL_APPROVAL_TTL_S: String(triggerApprovalTtl),
995
- }
992
+ ? { MEL_HITL_APPROVAL_TTL_S: String(triggerApprovalTtl) }
996
993
  : {}),
997
994
  };
998
995
  // Surface the tier to the chat panel as a system message so the
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@melaya/runner",
3
- "version": "1.1.59",
3
+ "version": "1.1.60",
4
4
  "description": "Run Melaya AI pipelines locally with your own LM Studio or Ollama models",
5
5
  "license": "Apache-2.0",
6
6
  "author": "Melaya Labs LLC",