- New feature in the debugger: the console is available for probing whenin 'suspendend mode'

This is a pretty great addition. How hard would it be to make it act more like a full-featured shell?
I.e., - have a promt so you can tell tell that it's waiting for your input,

Should not be so hard...

- respond after just one 'enter' instead of two,

The problem is that I have to pass the complete thing to the debugger
because it will do an exec in your code, so, if you want to define
something as:

def method1():
print 'foo'

You could not do, because the exec would pass right on the 'def
method1():', and you need it only after you defined the whole method...
That's so that you can do things like the below in the debugger:
class D:
def m1(self):
print 'here'

d = D()
print d

<__main__.D instance at 0x0A6D0E90>

I could still make an option to respond after a single-line, but then you'd not be able to do multi-line statements...
Anyway, I could do some more research to see if there's someway that
can make multi-line statements and keep the simplicity of single line
statements... Something as a buffer, that determines when it should
evaluate the whole thing... maybe as the real console, that detects
when it is a multiline and only then passes to the 'eval on new line'
approach.

- print out the value of variables by just typing the variable name (instead of having to type "print variable_name")

Probably doable

- cycle through your command history with keys like up/down-arrow or ctrl-up/down-arrow

I'll need to check if I can override the default Eclipse console used
for run... Probably hard though (I had to hack my way into Eclipse just
to be able to grab the input)...

- auto-completion of symbols

Same as the one before

Ideally
it would be nice to just have something like pycrust right there in a
tab instead of "Console". Stani's Python Editor has pycrust
built-in like that, but unfortunately it's not connected in any way to
your executing program, so it's not so useful.

Well, I'll soon have a replacement for pycrust, to help you do
'quick-scripts' in a scrap-page... something as the java scrap-page,
but I'll have to see how to connect it to the debugger shell.

The ultimate debugger, based on debuggers I'm familiar with,
would be a hybrid of that in VisualStudio crossed with Matlab.
VisualStudio does variable and watches nicely. It's got a list
(several lists actually) like Eclipse's 'Expressions', but you can
double click to add a new expression or edit an expression.
Eclipse is pretty close there, just needs a more efficient way to edit
the expressions. The Matlab debugger, on the other hand,
completely lacks an expression list, but its best feature is that when
you hit a breakpoint, you just have your normal interactive shell
prompt there with all it's features, plus all your program's state
loaded in memory.

Well, I hope I'll get to there ;-)

This is an excellent debugging model for a
dynamic programming language in my opinion. If there's some error
on the current line, you can quickly try out a bunch of variations to
figure out what the proper expression is to get the result you want,
using the actual data from your program, without having to cook up a
stand-alone test case that creates data similar to what's in your
program.