codekingpro/portable-devtools
114k
1from typing import Annotated2 3from langgraph._internal._scratchpad import PregelScratchpad4from langgraph.managed.base import ManagedValue5 6__all__ = ("IsLastStep", "RemainingStepsManager")7 8 9class IsLastStepManager(ManagedValue[bool]):10 @staticmethod11 def get(scratchpad: PregelScratchpad) -> bool:12 return scratchpad.step == scratchpad.stop - 113 14 15IsLastStep = Annotated[bool, IsLastStepManager]16 17 18class RemainingStepsManager(ManagedValue[int]):19 @staticmethod20 def get(scratchpad: PregelScratchpad) -> int:21 return scratchpad.stop - scratchpad.step22 23 24RemainingSteps = Annotated[int, RemainingStepsManager]25 